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

沒有留言:

張貼留言

指數變化(2026.5.29) 開始透過AI做整理

 指數變化(2026.5.29) 開始透過AI做整理 一、上周焦點: 美國消費者信心指數最新狀況 美國密西根大學消費者信心指數在 2026 年 5 月降至約 44.8,較 4 月的 49.8 再次下滑,並創下自 1950 年代統計以來的新低。 報告指出,油價上漲與生活成本壓力持續...