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.6.18) 開始透過AI做整理

 指數變化(2026.6.18) 開始透過AI做整理 一、上周焦點: 6/17 美國聯邦基金利率 更新:20260603 我賭最近一次FED會議後不升息:我瞎貓矇到的。 確定不升息,但作風改了,也打算針對FED過去方式作改革,也不提供前瞻指引了。 我覺得市場解讀很多層,反應時間點...