利用VBA程式解決Excel2010大量變更註解字型的問題
接續上篇文章解決Excel2010變更註解字型的問題,有使用者在Microsoft Answers提到:如何才能將已經建立好的多筆的儲存格註解一次進行字型的變更,而不用逐筆變更。
舉例以下工作表已經在數個儲存格中加入註解,如果要變更每一個儲存格的註解字型或相關格式,只能逐筆進行,無法以全部選取的方式,一鍵完成。這個需求在Excel2010並未提供,只能透過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環境中加入巨集程式,所以首先要把『開發人員』功能區叫出來,因為在Excel2007開始將VBA IDE放置在『開發人員』功能區,而此功能區沒有放在使用預設的功能區之列,所以使用者必須執行『檔案』/『選項』
在『Excel選項』表單中,點選『自訂功能區』選項,在右邊『自訂功能區』選單勾選『開發人員』(預設沒有勾選)
勾選完按確定可以看到功能區中新增一個『開發人員』功能區。
2.再點選『開發人員』/『Visual Basic』,叫出VBA IDE
2.點選所在的Excel工作簿名稱的VBAProject,舉例本範例的工作簿名稱為"如何大量變更註解字型.xlsm",副檔名為.xlsm代表是含有巨集的工作簿。按右滑鼠右鍵,在突顯功能表中選取插入模組
3.打開新增的模組,將上述程式碼複製貼上即可。
4.將滑鼠游標移至程式碼中,按下執行按鈕進行測試即可。
5.測試的時候請註意:必須將所有要更改註解的儲存格選取,並將點選『校閱』/『註解』/『顯示所有註解』,將儲存格上的註解顯示出來,這樣才能確保處理的是註解字型而非儲存格字型。
6.執行的結果如下
7.特別注意此巨集程式沒有復原功能,建議先複製一份原稿再進行測試!
歡迎引用,請注明來源出處!