夜市攤販資訊集合懶人包

Excel VBA 圖表資料來源、巨 集 圖表、VBA 圓 餅 圖在PTT/mobile01評價與討論,在ptt社群跟網路上大家這樣說

Excel VBA 圖表資料來源在[算表] VBA 迴圈作圖求助- 看板Office

作者[算表] VBA 迴圈作圖求助
標題van6499 (KIDD)
時間2018-12-26 11:40:34 UTC


軟體: Microsoft Excel

版本: 2010


小弟手上有筆資料,想以VBA作XY散布圖

A欄為日期,B欄至Q欄帶有XY資料

假設A3有一日期,則B3~Q3為X軸資料,B2~Q2為Y軸資料

目前測試可以做出單張圖為圖表分頁(code如下)

Dim chartA As Chart

Set chartA = Charts.Add

With chartA
.ChartType = xlXYScatter
.HasTitle = True
.ChartTitle.Text = "=Plot1!A3"
.SeriesCollection.NewSeries
.SeriesCollection(1).XValues = "=Plot1!B3:Q3"
.SeriesCollection(1).Values = "=Plot1!B2:Q2"

End With
End Sub


但是A欄有很多筆日期資料,但是每一筆的間隔列數不一定

想將上面的code改寫為if+迴圈的形式,一次做出很多張圖表分頁

想改寫成如下的框架

Dim i as interger

For i = 1 to 30 只搜尋A1~A30

if range("A"& i)>0 如果A1有日期

Chart.Add. 增加圖表分頁
With Chart. 指定圖表XY來源與圖表格式,表標題為A欄日期
.ChartType = xlXYScatter
.HasTitle = True
.ChartTitle.Text = "=Plot1!A"&"i"
.SeriesCollection.NewSeries
.SeriesCollection(1).XValues = Bi:Qi
.SeriesCollection(1).Values = B(i-1):Q(i-1)
else
next i 如果A1沒有日期就往下找A2,直到A30

end if


但是怎麼寫都有問題,想請有經驗的大大指點一下

--

→ soyoso: interger沒這個資料類型,是integer才是 12/26 11:49
→ soyoso: 因接來會增加圖表分頁 if range("A"&i)>0的方面range要配 12/26 11:52
→ soyoso: 合worksheets(資料來源工作表名).range或sheets(..).range 12/26 11:53
→ soyoso: if..then..end if少了then 12/26 11:54
→ soyoso: Bi:Qi改為"資料工作表名稱!b" & i & ":q" & i 12/26 11:55
→ soyoso: 另外i從1起?那i-1=0,工作表內因不會有這個列號,就會產 12/26 11:57
→ soyoso: 生錯誤 12/26 11:57
→ soyoso: next i寫在end if下方 12/26 11:57
→ soyoso: 其他如增加圖表分頁因是上方charts.add而不是chart.add 12/26 12:00
→ soyoso: chart.add.和with chart. 最後的.(點號)也不是正確寫法 12/26 12:02
→ van6499: 其他錯誤我大概了解,可以請教S大chart.add與with chart 12/26 12:15
→ van6499: 是後面都不用加.嗎? 12/26 12:15
→ van6499: 因為我不確定多張chart是否還要一個變數去表示 抱歉真新 12/26 12:17
→ van6499: 手的code傷眼睛 12/26 12:17
→ soyoso: 回文的後面為chart.add.(←)和with chart.(←)該處不用加 12/26 12:17
→ soyoso: 寫法如上面set chartA =charts.add 和 with chartA 後面是 12/26 12:21
→ soyoso: 不用加上點號的 12/26 12:21
→ van6499: 感謝S大,調整後已經可以實行,非常感謝 12/26 14:17

Excel VBA 圖表資料來源關鍵字相關的推薦文章

Excel VBA 圖表資料來源在ptt上的文章推薦目錄

    Excel VBA 圖表資料來源的PTT 評價、討論一次看