關於作者:

本文由微軟最有價值專 MVP 楊煥謀 提供。微軟十分感謝 MVP 主動地將他們的經驗與上百萬名其他技術使用者交流。MVP 楊煥謀 同時也將此篇文章放在他的部落格內,歡迎您按 此處  瀏覽 MVP 楊煥謀 更多的技術文章、經驗分享與觀點。

問題的來龍去脈

使用者在 Microsoft Answers 提到:如何才能將已經建立好的多筆的儲存格註解一次進行字型的變更,而不用逐筆變更。

問題的發生原因

舉例以下工作表已經在數個儲存格中加入註解,如果要變更每一個儲存格的註解字型或相關格式,只能逐筆進行,無法以全部選取的方式,一鍵完成。





問題的解決方法

這個需求在 Excel 2010 並未直接提供,只能透過 VBA 巨集程式來達成,所以解決問題的方法是:建立一個可以一次將所有註解字型進行變更的 VBA 程式。

程式碼內容如下:

Sub changefont()
Dim ob As Object
Dim obrange As Range
On Error Resume Next
Set obrange = Selection
For Each ob In obrange.Cells
ob.Comment.Shape.Select True
With Selection.Font
        .Name = "微軟正黑體"   '修改此字型名稱即可變更駐解字型

        .Size = 14
        .Strikethrough = False
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ColorIndex = xlAutomatic
'        .TintAndShade = 0
'        .ThemeFont = xlThemeFontNone
    End With
 With Selection
        .HorizontalAlignment = xlLeft
        .VerticalAlignment = xlTop
        .ReadingOrder = xlContext
        .Orientation = xlUpward
        .AutoSize = False
        .AddIndent = False
    End With

Next
End Sub


這支程式可以將選取區中所有儲存格的註解字型變更為【微軟正黑體】,使用者只要修改此字型名稱即可變更駐解字型,為了讓使用者更清楚其作用,我加上一個格式設定,讓註解變成橫書垂直方向。 如何使用這支程式?

1.因為我們要在 Excel 內建的 VBA IDE 環境中加入巨集程式,所以首先要把『開發人員』功能區叫出來,因為在 Excel 2007 開始將 VBA IDE 放置在『開發人員』功能區,而此功能區沒有放在使用預設的功能區之列,所以使用者必須執行『檔案』/『選項』。





在【Excel 選項】表單中,點選【自訂功能區】選項,在右邊【自訂功能區】選單勾選【開發人員】(預設沒有勾選)。





勾選完按確定可以看到功能區中新增一個【開發人員】功能區。





2.再點選【開發人員】/【Visual Basic】,叫出 VBA IDE。





點選所在的 Excel 工作簿名稱的 VBAProject,舉例本範例的工作簿名稱為【如何大量變更註解字型.xlsm】,副檔名為 .xlsm 代表是含有巨集的工作簿。按右滑鼠右鍵,在突顯功能表中選取插入模組。





3.打開新增的模組,將上述程式碼複製貼上即可。





4.將滑鼠游標移至程式碼中,按下執行按鈕進行測試即可。





5.測試的時候請註意:必須將所有要更改註解的儲存格選取,並將點選【校閱】/【註解】/【顯示所有註解】,將儲存格上的註解顯示出來,這樣才能確保處理的是註解字型而非儲存格字型。





6.執行的結果如下。





7.特別注意此巨集程式沒有復原功能,建議先複製一份原稿再進行測試!

其他相關資訊

關於 Excel2010 儲存格加入註解與變更註解之操作,可參考此文章連結 解決Excel2010變更註解字型的問題 。

請讓我們知道

還滿意我們寫的內容嗎?無論您是遇到了以下任何一種情況:
「太好了!問題解決了。」
「問題沒有解決,我有更好的建議。」
都歡迎您利用本篇文章底部的意見調查表,寫下您寶貴的意見。也期待您的鼓勵,讓我們為您創造更多實用的技術文章。

需要更多協助?

擴展您的技能
探索訓練
優先取得新功能
加入 Microsoft 測試人員

這項資訊有幫助嗎?

您對翻譯品質的滿意度為何?

會影響您使用體驗的因素為何?

是否還有其他的意見反應? (選填)

感謝您的意見反應!

×