保存宏
在這章中,你創(chuàng)建的宏WhatsInACell位于一個(gè)Excel工作表中。你需要保存這個(gè)開啟了的工作表來保存這個(gè)宏。建議你將其保存為Chap01.xls。保存后,關(guān)閉它,然后打開一個(gè)新工作表。注意,你工具欄上的自定義按鈕還在那兒,正如工具菜單里的Contents of Cells樣還在那兒一。在你使用這些工具運(yùn)行宏之前,請(qǐng)?jiān)趩卧馎1里輸入“Addition”,A2里輸入數(shù)字2,A3里輸入數(shù)字4,A4里輸入“=SUM(A2:A3)”。當(dāng)你運(yùn)行這個(gè)宏時(shí),Excel會(huì)打開適當(dāng)?shù)墓ぷ鞅聿⑶覉?zhí)行這個(gè)指定給自定義工具的過程。
打印宏
如果你要將你的宏歸檔起來,或者在你離開電腦的時(shí)候研究宏代碼,你就需要打印宏。你可以打印你儲(chǔ)存宏的整個(gè)模塊,也可以打印選擇的行。
打印含有宏的整個(gè)模塊:
1、將光標(biāo)放在模塊的任意地方
2、選擇“文件”-“打印”
3、在打?。璙BA對(duì)話框,選擇“當(dāng)前模塊”
4、點(diǎn)擊確定打印模塊
打印選中的文本:
1、在模塊里,選擇你要打印的文本
2、選擇“文件”-“打印”
3、在打?。璙BA對(duì)話框,選擇“選擇”
4、點(diǎn)擊確定打印選中的文本
保存宏在個(gè)人宏工作簿
當(dāng)你錄制宏時(shí),可以將它保存在個(gè)人宏工作簿里面。當(dāng)你儲(chǔ)存宏在個(gè)人宏工作簿里時(shí),Excel創(chuàng)建一個(gè)名為“Personal.xls”的文件并且放在“Program Files\Microsoft Office\Office”的子文件夾——XLStart文件夾里。保存在XLStart文件夾的文件每次在Excel啟動(dòng)的時(shí)候都會(huì)自動(dòng)打開。
個(gè)人宏工作簿是一個(gè)保存通用宏代碼的方便的地方,就像下面這個(gè)宏。現(xiàn)在來錄制一個(gè)通用的宏“FormulasOnOff”。這個(gè)宏的目的是設(shè)置是否顯示工作簿的公式。
1、選擇“工具”-“宏”-“錄制新宏”
2、在錄制宏對(duì)話框,輸入宏名“FormulasOnOff”
3、在保存宏的下拉菜單里選擇“個(gè)人宏工作簿”
4、點(diǎn)擊快捷鍵文本框,并且按下“Shift+F”
5、選擇確定退出錄制宏對(duì)話框
6、按下“Ctrl+~”打開公式的顯示,或者選擇“工具”-“選項(xiàng)”并且點(diǎn)擊“視圖”頁(yè)上“窗口選項(xiàng)”中的“公式”檢驗(yàn)盒。當(dāng)你打開公式顯示時(shí),工作簿單元格里顯示的是公式,而非這個(gè)公式計(jì)算出來的數(shù)值。如果你是在一個(gè)空白工作表中錄制這個(gè)宏的,那么你將注意到的唯一變化是工作表的列寬。
7、點(diǎn)擊“停止錄制”,或者選擇“工具”-“宏”-“停止錄制”
8、查看代碼:按下Alt+F11,或者選擇“工具”-“宏”-“VB編輯器”
這時(shí),VB編輯器屏幕上的工程窗口里顯示了一個(gè)多出來的VBA工程(Personal.xls)。點(diǎn)擊這個(gè)過程名左邊的加號(hào)來打開這個(gè)工程。這個(gè)VBA工程包含兩個(gè)文件夾:Excel對(duì)象和模塊。
點(diǎn)擊模塊文件夾的加號(hào)來打開它,然后雙擊模塊1。這時(shí)代碼窗口顯示了宏FormulasOnOff的內(nèi)容如下圖所示。每個(gè)Excel工作表只有一個(gè)工程。你第一次錄制宏的時(shí)候,Excel創(chuàng)建一個(gè)模塊文件夾,并且將你的代碼儲(chǔ)存在模塊1里面。如果你在相同的工作表里錄制另一個(gè)宏,Excel將其放在前一個(gè)錄制的宏的同一個(gè)模塊1的下面。相同工作時(shí)間錄制的所有的宏都儲(chǔ)存在相同的模塊里面。但是,如果你關(guān)閉Excel,然后再重新這個(gè)工作簿,Excel就會(huì)將它儲(chǔ)存在一個(gè)新的模塊。
在工程瀏覽器窗口,你可以選擇你需要的工程
錄制宏的時(shí)候,你打開了公式的顯示。這個(gè)宏的名稱表明可以切換公式顯示的開和關(guān)。你必須修改代碼才能確保它按照這種方式運(yùn)行。
錄制的宏設(shè)置當(dāng)前窗口顯示公式為真:
ActiveWindow.DisplayFormulas = True
設(shè)置為“False”將關(guān)閉公式的顯示:
ActiveWindow.DisplayFormulas = False
為了在VBA里設(shè)置轉(zhuǎn)換,你需要按照下面的方法來連接兩語(yǔ)句:
ActiveWindow.DisplayFormulas = Not ActiveWindow.DisplayFormulas
用上面的語(yǔ)句代替你錄制的代碼,并且運(yùn)行這個(gè)宏。無論你運(yùn)行多少次,這個(gè)宏總是知道做什么。你可以使用相同的思路來創(chuàng)建代碼以切換格式線或其它Excel特點(diǎn)的顯示與否。當(dāng)你關(guān)閉Excel時(shí),它會(huì)提示你保存?zhèn)€人宏工作簿的變化,點(diǎn)擊確定以保存變化。當(dāng)你重啟Excel,個(gè)人宏工作簿會(huì)在后臺(tái)自動(dòng)開啟。
如果你想要在個(gè)人宏工作簿里保存其它的宏,你可以選擇下列方法中的一個(gè):
??
1、錄制一個(gè)新宏,并且選擇個(gè)人宏工作簿來儲(chǔ)存
2、切換到VB編輯器,打開你要移動(dòng)到個(gè)人宏工作簿里去的宏,剪切這個(gè)宏,并且打開個(gè)人宏工作簿。將宏粘貼到已經(jīng)存在的模塊中,或者創(chuàng)建一個(gè)新模塊再粘貼
3、選擇“文件”-“導(dǎo)入文件”……從另外一個(gè)VB工程(*.frm,*.bas,*.cls)導(dǎo)入宏代碼
?
打開含有宏的工作簿
無論何時(shí)你打開一個(gè)含有宏的工作簿,Excel顯示一個(gè)警告信息,如圖1-16。為了避免顯示這個(gè)警
告信息,你可以通過安全對(duì)話框關(guān)閉病毒保護(hù),如下圖所示。
當(dāng)病毒信息出現(xiàn)時(shí),你可以選擇:
?
1、取消宏——當(dāng)你打開一個(gè)來源不熟悉的含有宏的工作簿,例如因特網(wǎng),電子郵件,為了保護(hù)你的電腦不被宏病毒破壞,你應(yīng)該選擇“取消宏”。工作簿打開時(shí)不會(huì)運(yùn)行它里面的任何宏。如果沒有密碼保護(hù)的話,你就可以切換到VB編輯窗口查看代碼。查看代碼后(如果代碼安全),你可以關(guān)閉該工作簿,然后重新打開它并且啟用宏。
如果你打開了病毒保護(hù),當(dāng)工作簿含有宏時(shí),Excel 會(huì)彈出一個(gè)警告信息
2、啟用宏——你如果指定這個(gè)工作簿來自于一個(gè)可靠的來源,也含有有用的宏,點(diǎn)擊啟用宏按鈕。
3、更多信息——在你決定取消或者啟用宏時(shí),如果你需要了解更多的信息,那么點(diǎn)擊這個(gè)按鈕。Excel2002 有一個(gè)有用的功能讓你自動(dòng)取消所有沒有簽名并且來源不明的宏。選擇“工具”-“宏”-“安全”進(jìn)入這個(gè)功能。
當(dāng)你創(chuàng)建一個(gè)需要給別人使用的宏時(shí),你可以使用VB編輯器工具菜單里的數(shù)字簽名來確認(rèn)這個(gè)宏不會(huì)帶來病毒。宏的數(shù)字簽名正如在紙上的簽名。請(qǐng)?jiān)贓xcel在線幫助里搜索如何安裝和創(chuàng)建你自己的數(shù)字簽名。輸入“數(shù)字簽名”就可以獲得相關(guān)主題。
選擇中間的選項(xiàng),讓你根據(jù)工作簿決定是否取消或者啟用宏VB編輯窗口
現(xiàn)在,你已經(jīng)知道如何錄制,運(yùn)行和修改宏了,讓我們花些時(shí)間來熟悉VB編輯器的一些特點(diǎn)。使用
VB編輯器上的工具,你能夠:
1、編寫你自己的宏過程
2、創(chuàng)建自定義窗體
3、查看和修改對(duì)象屬性
4、測(cè)試VBA過程和定位錯(cuò)誤
有兩種方法進(jìn)入VB編輯器:
?
①?gòu)腅xcel界面的工具菜單:選擇“工具”-“宏”-“宏編輯器”
②從鍵盤:按下Alt+F11
(在工作表標(biāo)簽上單擊右鍵,然后選擇查看代碼)
更多建議: