2020年10月24日 星期六

Excel VBA 如何固定ActiveX 按鈕位置

 上周一個被問到的一個可愛的問題,整理一下做分享。

筆者建議可以透過控制.left、.top來控制ActiveX 按鈕位置。但要如何使每一頁工作頁的按鈕位置都固定呢!!!要在"ThisWorkbook"裡做觸發設定。

在VBA編輯視窗下,透過專案管理員,可以找到"ThisWorkbook",點開後程式碼編輯區,點選工作簿(WORKBOOK),在點選SheetChange作為觸發,如圖2所示。

image

圖1.專案管理員裏頭的ThisWorkbook

image

圖2.觸發設定

位置屬性基本概念:

ActiveX 按鈕 .left:按鈕左邊離工作簿左邊的相對距離

ActiveX 按鈕 .top:按鈕上邊離工作簿左上角的相對距離

image

圖3.left、top 位置控制示意

大概了解位置屬性後,可參考如下內容的編輯,即可固定ActiveX 按鈕。

程式碼編輯參考:

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
    ActiveSheet.CommandButton1.Left = 62
    ActiveSheet.CommandButton1.Top = 415
End Sub

沒有留言:

張貼留言

12 星座未來一週股市走跳|2026/8/23–8/29(台股×美股)

12 星座未來一週股市走跳|2026/8/23–8/29(台股×美股) 本報以 印度占星月亮星座 Rashi 為準(恆星黃道 Sidereal,2026 歲差約 24°13'),星曆由純 Python 天文演算法(VSOP87+章動+Lahiri 歲差)真...