之前發了一篇BDI 不妙! (2021/11/01)一文。
這邊小編發現,這段時間除了固定發發股票分析文外,似乎都沒再分享一些簡易的VBA文,所以分享這一篇做分享。
設定名稱,小編設定有7組如下圖,與對應的參照。
名稱管理員設定 純文字版:日期,=OFFSET(工作表5!$Q$2,起始,,組數,1)起始,=工作表5!$A$2組數,=工作表5!$B$2漲跌,=OFFSET(日期,,4)MIN,=MIN(OFFSET(日期,,2))MAX,=MAX(OFFSET(日期,,2))BDI,=OFFSET(日期,,2)
名稱管理員操作GIF解說 :
圖3.名稱管理員設定GIF
P.S請留意工作表名稱設定歐!!!
筆者設定OFFSET是以第一行有資料的R行開始設定為1。
2.儲存格位置:
保留起始、最大、最小與組數設定的儲存格位置(小編是選A2、B2、C2、D2、E2)
C2儲存格,設定為MAX
D2儲存格,設定為MINI
3.圖表製作:
先手動先畫兩張圖表,再變更資料為"BDI"跟X軸改為"日期"。
GIF操作:
先畫兩張圖,點選圖形,點選滑鼠右鍵選"選取資料",對話框點選編輯,在數列值中做預設名稱設定;中間GIF小編有錯誤操作,亦有透過"名稱管理員"做名稱確立後再重新設定。
圖4.名稱管理員設定GIF
4.表單控制項使用:
插入表單控制項的物件,我們選卷軸控制項作插入。
GIF操作:
問題:美中不足的尺規很笨。
所以我們要加入自動設定尺規的VBA CODE如下:
Sub 調整尺規()
With ActiveSheet '改工作表
.ChartObjects("圖表 1").Chart.Axes(xlValue) _
.MaximumScale = Round(.Range("$C$2").Value + 1.3, 3) 'X MAX
.ChartObjects("圖表 1").Chart.Axes(xlValue) _
.MinimumScale = Round(.Range("$D$2").Value - 0.001, 3) 'X MIN
End With
End Sub
Sub 卷軸設定()
With ActiveSheet
.Shapes("Scroll Bar 1").ControlFormat.Max = .Range("$E2").Value - .Range("$B$2").Value
End With
調整尺規
End Sub
設定GIF:
以上大功告成
沒有留言:
張貼留言