[算表] VBA 迴圈作圖求助

看板Office作者 (KIDD)時間5年前 (2018/12/26 11:40), 5年前編輯推噓0(0018)
留言18則, 2人參與, 5年前最新討論串1/1
軟體: 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 但是怎麼寫都有問題,想請有經驗的大大指點一下 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.204.21.103 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1545795638.A.BE0.html ※ 編輯: van6499 (180.204.21.103), 12/26/2018 11:44:42

12/26 11:49, 5年前 , 1F
interger沒這個資料類型,是integer才是
12/26 11:49, 1F

12/26 11:52, 5年前 , 2F
因接來會增加圖表分頁 if range("A"&i)>0的方面range要配
12/26 11:52, 2F

12/26 11:53, 5年前 , 3F
合worksheets(資料來源工作表名).range或sheets(..).range
12/26 11:53, 3F

12/26 11:54, 5年前 , 4F
if..then..end if少了then
12/26 11:54, 4F

12/26 11:55, 5年前 , 5F
Bi:Qi改為"資料工作表名稱!b" & i & ":q" & i
12/26 11:55, 5F

12/26 11:57, 5年前 , 6F
另外i從1起?那i-1=0,工作表內因不會有這個列號,就會產
12/26 11:57, 6F

12/26 11:57, 5年前 , 7F
生錯誤
12/26 11:57, 7F

12/26 11:57, 5年前 , 8F
next i寫在end if下方
12/26 11:57, 8F

12/26 12:00, 5年前 , 9F
其他如增加圖表分頁因是上方charts.add而不是chart.add
12/26 12:00, 9F

12/26 12:02, 5年前 , 10F
chart.add.和with chart. 最後的.(點號)也不是正確寫法
12/26 12:02, 10F

12/26 12:15, 5年前 , 11F
其他錯誤我大概了解,可以請教S大chart.add與with chart
12/26 12:15, 11F

12/26 12:15, 5年前 , 12F
是後面都不用加.嗎?
12/26 12:15, 12F

12/26 12:17, 5年前 , 13F
因為我不確定多張chart是否還要一個變數去表示 抱歉真新
12/26 12:17, 13F

12/26 12:17, 5年前 , 14F
手的code傷眼睛
12/26 12:17, 14F

12/26 12:17, 5年前 , 15F
回文的後面為chart.add.(←)和with chart.(←)該處不用加
12/26 12:17, 15F

12/26 12:21, 5年前 , 16F
寫法如上面set chartA =charts.add 和 with chartA 後面是
12/26 12:21, 16F

12/26 12:21, 5年前 , 17F
不用加上點號的
12/26 12:21, 17F

12/26 14:17, 5年前 , 18F
感謝S大,調整後已經可以實行,非常感謝
12/26 14:17, 18F
文章代碼(AID): #1S8lWslW (Office)