[VBA ] 請問畫圖表的問題

看板Visual_Basic作者 (Last Dance)時間17年前 (2008/04/23 23:24), 編輯推噓0(002)
留言2則, 1人參與, 最新討論串1/1
請問大家 我用VBA來畫一個直條圖 我的直條圖 X 軸為日期,Y 軸為次數 每一天我的資料來源會有變動 我就會執行一次重新畫圖的動作 我的程式碼如下: Dim i as Integer, j as Integer, EQR as Range, CountR as Range '設定 i 值 i = WorksheetFunction.CountA(Columns("A:A")) '設定 j 值 If EQ1 = "PA1" Then j = 2 ElseIf EQ1 = "PA2" Then j = 3 ElseIf EQ1 = "PA3" Then j = 4 . . . ElseIf EQ1 = "PA15" Then j = 16 '設定日期為直條圖的 X 軸 Set EQR = Sheets("機台").Range(Cells(2, 1), Cells(i + 1, 1)) '設定次數為直條圖的 Y 軸 Set CountR = Sheets("機台").Range(Cells(2, j), Cells(i + 1, j)) '畫圖 ActiveSheet.ChartObjects("圖表 1").Activate ActiveChart.ChartArea.Select ActiveChart.SetSourceData Source:=Sheets("機台").Range(EQR, CountR)_ , PlotBy:=xlColumns With ActiveChart .HasTitle = True .ChartTitle.Characters.Text = EQ1 End With ****************************************************************************** 我遇到的問題是 假設現在 i = 4 , j =4 那 EQR 的範圍是 Range("A2:A5") CountR 的範圍是 Range("D2:D5") 可是畫圖時,圖呈現出來的的範圍變成 Range("A2:D5") A B C D 1 2 3 4 5 也就是我只要 A3:A5 以及 D3:D5 兩行資料來畫圖 但是執行程式碼後的圖卻畫成 A3:D5 的情況 中間的B1 , B2 , ... , C1 , C2 , ...我不要的也畫出來 請問我的程式碼是否哪裡有問題呢? 可以請大家幫我解惑一下嗎? 感謝大家的回答 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.169.85.159

04/26 14:32, , 1F
我想應該是我在畫圖的時候Range設的不好
04/26 14:32, 1F

04/26 14:33, , 2F
真的沒有人可以回答我的問題嗎?
04/26 14:33, 2F
文章代碼(AID): #183rIru6 (Visual_Basic)