返回列表 上一主題 發帖

[發問] 如何讓已定義巨集的按鈕在切換不同分頁時都可被看到(已解決)

[發問] 如何讓已定義巨集的按鈕在切換不同分頁時都可被看到(已解決)

本帖最後由 swatt 於 2011-7-11 13:37 編輯

請問各位高手大大,
我已經定義(連結)某個巨集給一個按鈕,並希望在切換不同分頁(sheet)時,此按鈕都可被看到(即可按下執行),
也就是讓此按鈕一直 on the top,不會在切換分頁時被蓋掉,請問該如何做呢?

如圖,把笑臉拉到工具列上,指定巨集。

TOP

回復 2# chin15


受教了,謝謝!另外可否請教你是否知道如何查看到插入名稱~定義的總名單?因為它好像是個別檔案裡才看得到,若有不同檔名設了相同的定義名字有關係嗎?或許應該換個方式請問:不同檔案即使定義名字相同也無妨,是嗎?

TOP

感謝 chin15 大大,
新增工具列的方式比我自己可想到方法好多了。

TOP

再請問一下 ,
我新增一個工具列,並加進去已定義巨集的按鈕,這樣可以達成目的。
可是這樣新增的工具列在每個workbook都可看得到,
可否將它指定成只有某個workbook專屬的工具列嗎?

TOP

曾收集到類似分享,以VBA 寫於  Workbook  開啟自定義按鈕,於關閉檔案時刪除
但未詳細研究其寫法,只更改自己欲定義的地方
可開啟附件自行研究即可,若對 VBA 有基礎應該可輕易知道該更改地方
若想知道詳細寫法含意,需其他高手協助釋疑,
我只知道某些區塊,希望有幫助

測試個人表單巨集.rar (8.79 KB) 方式

主要VBA 如下

Private Sub Workbook_BeforeClose(Cancel As Boolean)
   
Sheets("測試").Select
On Error Resume Next
   Application.CommandBars("MyMenu").Delete
   Application.CommandBars("ply").Controls("個人操作表單").Delete
   
   
End Sub

Private Sub Workbook_Open()

Sheets("測試").Select

On Error Resume Next
   Application.CommandBars("MyMenu").Delete
   Application.CommandBars("ply").Controls("個人操作表單").Delete
   
Dim MyMenuBar As CommandBar
Dim MyButton As CommandBarButton

Set MyMenuBar = Application.CommandBars.Add
   With MyMenuBar
     .Visible = True
     .Name = "MyMenu"
     .Position = msoBarTop
    Set MyButton = .Controls.Add
      With MyButton
         .Visible = True
         .Caption = "個人操作表單(&P)"
         .Style = msoButtonIconAndCaption
         .FaceId = 988
         .OnAction = "測試個人表單巨集"
      End With
   End With
   
   Set MyButton = Application.CommandBars("ply").Controls.Add(msoControlButton, , , 1)
      With MyButton
         .Caption = "個人操作表單"
         .Visible = True
         .FaceId = 456
         .OnAction = "測試個人表單巨集"
      
      End With
      


   
End Sub

Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
On Error Resume Next
If Workbooks.Count = 1 Then
   Application.CommandBars("MyMenu").Controls("個人操作表單(&P)").Enabled = False

End If

End Sub

TOP

感謝 Happkkevin 大大,
原來邏輯是藉著開啟/關閉檔案,來開啟/關閉工具列,
又學到一招,謝謝啦~

TOP

        靜思自在 : 人要自愛,才能愛普天下的人。
返回列表 上一主題