首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> VC >> VC 教學

Office 隱藏工具列大揭秘:用巨集與選單掌控 56 個工具列

     編輯:VC 教學

隱藏在下拉按鈕背後的工具列

Office 2000 中 Word 擁有 56 個工具列、50 個彈出式選單,但「檢視/工具列」選單僅顯示少數。其實許多工具列藏在工具列按鈕的下拉選單中——那些帶有灰色「移動把手」的選單,按住把手拖曳即可「脫離」成為獨立浮動工具列,並自動出現在「工具列」選單中。

常見可拖曳工具列對照表

內部名稱顯示標題
Fill Color填充顏色
Line Color線條顏色
Font Color字體顏色
Shading Color底紋色
Borders邊框
Callouts標註

方法一:巨集直接顯示/隱藏

Sub ShowCalloutToolbars(OnOrOff As Boolean)
    CommandBars("Callouts").Visible = OnOrOff
    CommandBars("Font Color").Visible = OnOrOff
    CommandBars("Line Color").Visible = OnOrOff
    CommandBars("Fill Color").Visible = OnOrOff
End Sub

' 使用方式
ShowCalloutToolbars True   ' 顯示四大工具列
ShowCalloutToolbars False  ' 隱藏

方法二:自訂選單掛載所有隱藏工具列

在 Word 啟動時自動於「檢視/工具列」下新增「隱藏工具列」彈出式選單,關閉時移除。

' 標準模組
Sub AutoExec()
    CustomizationContext = NormalTemplate
    AddHiddenToolBarsOption
End Sub

Sub AutoExit()
    CustomizationContext = NormalTemplate
    RemoveHiddenToolBarsOption
End Sub

Sub AddHiddenToolBarsOption()
    RemoveHiddenToolBarsOption ' 先移除舊的
    With CommandBars("View")
        With .Controls.Add(Type:=msoControlPopup, _
            Before:=.Controls("工具列(&T)").Index + 1)
            .Caption = "隱藏工具列(&H)"
            .OnAction = "ListHiddenToolbars"
        End With
    End With
End Sub

Sub RemoveHiddenToolBarsOption()
    On Error Resume Next
    CommandBars("View").Controls("隱藏工具列(&H)").Delete
End Sub

Sub ListHiddenToolbars()
    ' 動態列出所有可拖曳工具列,點擊即可切換顯示
    Dim cb As CommandBar
    Dim ctl As CommandBarControl
    Dim menu As CommandBarPopup
    
    Set menu = CommandBars("View").Controls("隱藏工具列(&H)")
    ' 清空舊項目
    For i = menu.Controls.Count To 1 Step -1
        menu.Controls(i).Delete
    Next
    
    ' 重新填入
    For Each cb In CommandBars
        If cb.Type = msoBarTypePopup Then
            Set ctl = menu.Controls.Add(Type:=msoControlButton)
            ctl.Caption = cb.Name
            ctl.Tag = cb.Name
            ctl.OnAction = "ToggleHiddenToolbar"
            ctl.State = IIf(cb.Visible, msoButtonDown, msoButtonUp)
        End If
    Next
End Sub

Sub ToggleHiddenToolbar()
    Dim name As String
    name = Application.CommandBars.ActionControl.Tag
    CommandBars(name).Visible = Not CommandBars(name).Visible
    ' 更新按鈕狀態
    Application.CommandBars.ActionControl.State = _
        IIf(CommandBars(name).Visible, msoButtonDown, msoButtonUp)
End Sub

操作步驟

  1. 開啟 Word,Alt+F11 進入 VBA 編輯器
  2. 在 Normal 專案插入標準模組,貼上上述代碼
  3. 重新啟動 Word,「檢視/工具列」下即出現「隱藏工具列」選單
  4. 點選即可一鍵切換顯示/隱藏

適用範圍

  • Word / Excel / PowerPoint 2000 及以上版本
  • 原理相同,僅命令列名稱需依應用程式語言調整(如英文版為 "Toolbars")

掌握這招,再也不會為了找不到「字體顏色」、「邊框」等工具列而煩惱,Office 效率直線上升!

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved