作者foreverkn (Last Dance)
看板Visual_Basic
標題[VBA ] 請問畫圖表的問題
時間Wed Apr 23 23:24:36 2008
請問大家
我用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
→ foreverkn:我想應該是我在畫圖的時候Range設的不好 04/26 14:32
→ foreverkn:真的沒有人可以回答我的問題嗎? 04/26 14:33