Board logo

標題: [分享] 要如何依我所選擇的起始時間&來源總類來套到圖表中呢?(已解決) [打印本頁]

作者: vackbin    時間: 2011-3-6 00:56     標題: 要如何依我所選擇的起始時間&來源總類來套到圖表中呢?(已解決)

本帖最後由 vackbin 於 2011-3-7 23:21 編輯

各位大大好~~~

小弟想做一個圖表,可選擇起始日期&來源總類後下方折線圖便畫出該區段的圖形 ....
但是試了許久能無法做出....煩請大大們幫幫忙阿~~:Q

[attach]4924[/attach]

[attach]4925[/attach]
作者: oobird    時間: 2011-3-6 10:58

Sub Macro1()
For Each c In Range([a8], [a8].End(4))
If c >= [b2] And x = 0 Then x = c.Row
If c >= [b3] And y = 0 Then y = c.Row
Next
    ActiveSheet.ChartObjects(1).Select
'   Charts.Add
    ActiveChart.ChartType = xlLineMarkers
    ActiveChart.SetSourceData Source:=Sheets("線圖").Range("A" & x & ":B" & y), PlotBy:=xlColumns
    ActiveChart.Location Where:=xlLocationAsObject, Name:="線圖"
    ActiveChart.HasDataTable = False
End Sub
作者: vackbin    時間: 2011-3-7 00:42

感謝凸大熱心的回覆~~
但小弟測試後發現資料來源會選取錯誤範圍??是我哪裡寫錯了嗎??(附上檔案)
也無法依選擇來源總類調整資料來源~~詳如圖示
請大大再幫幫手啊.....

[attach]4933[/attach]

[attach]4932[/attach]
作者: oobird    時間: 2011-3-7 08:51

為何要把0改為5?
見附件
[attach]4934[/attach]
作者: oobird    時間: 2011-3-7 08:54

沒注意你還不能下載
  1. Sub Macro1()
  2. Dim c As Range, x%, y%
  3. [b2:b3] = [b2:b3].Value
  4. For Each c In Range([a8], [a8].End(4))
  5. If c >= [b2] And x = 0 Then x = c.Row
  6. If c > [b3] And y = 0 Then y = c.Row - 1
  7. Next
  8. If x = 0 Then x = 8
  9. If y = 0 Then y = [a65536].End(3).Row
  10. ActiveSheet.ChartObjects(1).Select
  11. '   Charts.Add
  12.     ActiveChart.ChartType = xlLineMarkers
  13.     ActiveChart.SetSourceData Source:=Sheets("線圖").Range("A" & x & ":B" & y), PlotBy:=xlColumns
  14.     ActiveChart.Location Where:=xlLocationAsObject, Name:="線圖"
  15.     ActiveChart.HasDataTable = False
  16. End Sub
複製代碼

作者: vackbin    時間: 2011-3-7 23:20

感謝凸大熱心的回覆~~+1
測試後沒錯就是那道光阿(瞇眼點頭狀)~~~太謝謝大大了
作者: FAlonso    時間: 2011-3-9 21:59

本帖最後由 FAlonso 於 2011-3-12 11:09 編輯

仔細研究這個例子




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)