2023年2月19日 星期日

VBA:懶人畫圖法 (使用Shapes 物件、AddChart方法、ChartArea與SeriesCollection物件等)

 有多懶,設定資料來源,尺標來源後,就可以畫圖了,就是這樣懶。

1.首先資料長這樣,目標為a與b行


2.設定程式碼:

    X_VALUE、Y_VALUE

               SET  X_VALUE= ActiveSheet.Range("A1:A10") '設定這裡為x軸

                SET  Y_VALUE= ActiveSheet.Range("B1:B10")   '設定這裡為y軸    

3.插入以下CHART_DO的code,例如,作一個按鈕如下。

4.副程式:

SUB CHART_DO()

temp1 ="TEST"

               SET  X_VALUE= ActiveSheet.Range("A1:A10") '設定這裡為x軸

                SET  Y_VALUE= ActiveSheet.Range("B1:B10")   '設定這裡為y軸             

                ymAXAX = Application.Max(Y_VALUE)

                yMINAX = Application.Max(Y_VALUE)

                 ActiveSheet.Shapes.AddChart.Select

                 Set ch = ActiveSheet.Shapes(ActiveSheet.Shapes.Count)                

                 ch.Name = temp1                 

                 If ActiveChart.SeriesCollection.Count > 0 Then

                        ActiveChart.ChartArea.ClearContents                 

                 End If                 

                ActiveChart.SeriesCollection.NewSeries

                ActiveChart.SeriesCollection(1).Values = Y_VALUE

                 ActiveChart.SeriesCollection(1).ChartType = xlLine      '畫折線圖 圖形種類GOOGLE           

                ActiveChart.SeriesCollection(1).Name = temp1                

                ActiveChart.SeriesCollection(1).XValues = X_VALUE


     With ActiveSheet.ChartObjects(ch.Name).Chart.Axes(xlValue)

                         .MinimumScale = yMINAX 

                        .MaximumScale = ymAXAX 

                 End With

END SUB

'缺點,沒有控制位置 哈。

基本上就是先不管資料先新增一張圖,然後清除所有資料後,再來新增要的資料,繪製成圖。



沒有留言:

張貼留言

指數變化(2025.03.28)

 指數變化(2025.03.28) 上周焦點: 美國消費者信心指數 3/25 92.9 美國耐久財訂單月增率 3/26 1.4 PCE 月增 0.4 年增 2.8 (不多阿,最高還有5.5ㄝ)   本周愛看: 美國非農業就業人數變化 美國ISM製造業採購經理人指數 美國芝加哥FE...