DIY自己的Office 2007功能選單
在Office 2003的年代中,若您很喜歡用VBA錄製巨集,相信也有一堆人利用自訂選單的功能,建新的工具列,再指定巨集,就有新的自組功能可以用了。
不過,到了Office 2007,UI界面設計的方式,出乎意料之外,來個大變革~~以往內建的自訂工具列功能,熊熊的不見去~~那….怎麼辦呢?
就筆者的經驗,和MSDN做好朋友,會是解決問題的某一個好方法。
不過,MSDN沒有很多的中文,學好英文,也相當重要囉~~
@_@
那如何把VBA程式加到2007或2010上功能選單呢?整理一下網路上的文件,給大家參考一下囉。
1. 請下載 Office 2007 Custom UI Editor,裝好備用。
2. 寫好你的VBA程式。如筆者用EXCEL錄了股價自動下載巨集。錄好之後,把程序名稱修改為如下的內容,之後,在Excel 2007 中,把它儲存”啟動巨集的工作表” 文件。
Sub Macro1(control As IRibbonControl)
'
' Macro1 Macro
'
ActiveWorkbook.RefreshAll
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;http://tw.stock.yahoo.com/q/q?s=2330", Destination:=Range("$A$1"))
.Name = "q?s=2330"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlOverwriteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlSpecifiedTables
.WebFormatting = xlWebFormattingNone
.WebTables = "6"
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:=False
End With
End Sub
3. 在裝好的UI編輯器中開啟這個文件。並且輸入下面的內容:
<?xml version="1.0" encoding="utf-8" ?>
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" >
<ribbon>
<tabs>
<tab id="myTab" label="My Tab"> tab頁的名字
<group id="group1" label="Group 1"> 頁裡的群組名字
<button id="myButton" label="My Button"
imageMso="HappyFace" size="large"
onAction="Macro1" /> 巨集的名字
</group>
</tab>
</tabs>
</ribbon>
</customUI>
4. 儲存檔案。之後,開啟這個文件,就可以看到做好的功能表囉。
留言
張貼留言