怎麽用Excel VBA實現”複製貼上“(上),鑫大叔Excel VBA第一期
第一期内容按@小本 要求,講解怎麽用VBA從A分頁自動複製貼上到B分頁。原本沒打算分上下集,但是第一期總要説明下VBA是什麽,使用起來有哪些要注意的,編程環境雖然不複雜也還是得提一下。是以只能分成上下了~
🔷 介紹 🔷
❇️ VBA是什麽:一種主要用於Microsoft Office的編程語言,原名是Visual Basic for Application。這裏主要討論如何在Excel執行和編輯VBA。
❇️ Excel VBA能做什麽:實現自動化/半自動化,把原本你需要自己一步一脚印用滑鼠和鍵盤做的東西,變成點擊一個按鈕就能搞定。能寄電郵、整理資料、生成網頁,大部分重複性強的操作。
❇️ 適用人群:工作經常使用Excel,缺乏編程背景但想要加快工作效率的人。
🔷 編程界面和試著運行一個巨集 🔷
❇️ 第一步,開啓編輯器:打開Excel後,按快速鍵(Alt + F11)開啓VB編輯器(編輯和執行VBA程式碼的地方)。
❇️ 第二步,插入模組(Module):滑鼠右鍵鍵點擊“Microsoft Excel Objects”,在表單中選取“Insert” >> “Module”。
❇️ 第三步,貼上程式碼:滑鼠左鍵雙擊“Module1”,黏貼下面的代碼到“Module1”的編輯窗口。
Sub Macro1() Sheets("B").Cells(1, 2) = 1 Sheets("C").Cells(1, 3) = Sheets("B").Cells(1, 2) MsgBox "Hello World!" End Sub
❇️ 第四步,執行程式:滑鼠左鍵單擊工具欄綠色向右箭頭會運行代碼,分頁B的A1單元格出現數字“1”,分頁C的C1單元格也出現數字“1”,並彈出視窗顯示編程經典文字“Hello world!"
❇️ 單擊箭頭沒有運行代碼,反而跳出視窗怎麽辦?選擇要執行的程式(這裏也就只有一個可以選),再點擊“Run”執行。
🔷 文中範例下載 🔷
- 如果上面沒有成功,也可以下載範本來試試看,點我下載。
- 檔案打開後注意下是不是有下圖的警告,這是要使用者確認這個巨集是否可信,以免執行了有問題的巨集。點擊“Enable Content”就可以正常使用了。
- 下圖中的“Macro1”是這次的範例,“Macro2”是下次的範例,有興趣的可以先睹爲快。
🔷 範例VBA程式碼解説 🔷
Sub Macro1() End Sub
- 一個完整的巨集(英文Macro,中國好像叫宏”),格式為Sub開頭,End Sub結尾,"Macro1"可以改成自己喜歡的名字(不能用數字開頭,名字之間也不可有空白,更不能有除了“_”以外的特殊符號,最好是英文,尤其像我這樣電腦用英文系統的人),注意事項可以參考這篇文章。要運行的内容放在它們之間。
- 巨集的定義是一段可執行的VBA代碼,現階段只要知道你每個程式都要有它就行。
Sheets("B").Cells(1, 2) = 1
- Sheets(“B”):代表分頁B。
- Cells(1,2): 代表單元格B1(第一行,第二列)。
- 整行代碼會將數字1輸入分頁B的單元格B2(第一行,第二列)
Sheets("C").Cells(1, 3) = Sheets("B").Cells(1, 2)
- 這行代碼就是讓分頁C的單元格C1(第一行,第三列)等於分頁B的單元格B2(第一行,第二列),用這種方式取得複製貼上的效果。
MsgBox "Hello World!"
- 跳出一個視窗,顯示“Hello World!"。
- 每個編程課第一堂課必備内容,理由參考百度百科。
🔷 給按鍵設置要運行的巨集 🔷
一般VBA教學的書籍都喜歡用正規但是醜不拉幾的按鈕,我偏不教。
❇️ 第一步,找個你喜歡的圖案:如果沒有喜歡的,隨便放張喜歡的圖代替也可以。
❇️ 第二步,用滑鼠右鍵點擊按鈕,選“Assign Macro..."
❇️ 第三步,點擊想要讓按鈕執行的巨集,再點”Ok“,這樣以後點擊按鈕就會執行該巨集了。
🔷 下期預告 🔷
下次在本期的基礎上,套用循環結構重複執行“複製貼上”。
🔷 吐槽廢文 🔷
- 用英文版的Excel寫中文教學感覺好難,很多功能我都不知道中文叫什麽,還要去參考中文教學書籍,乾脆直接上圖,希望讀者能看懂(不負責任的大叔)。
- 這期其實跳過了很多原本應該做的設定,但是擔心各位看到要做這麽多設定直接關掉,所以還是後面慢慢補上(如果還有的話)。