Excel VBA其實很簡單

《別怕,Excel VBA其實很簡單(第2版)》以經典案例為主導,呈現Excel VBA以一當十的核心功能!

暢銷:上一版長期雄踞網店VBA類圖書暢銷書榜首!

精鍊:以經典案例為主導,呈現Excel VBA以一當十的核心功能!

高效:一句頂一萬句的「懶人心法」,教你一鍵搞定所有報表!

第1章 Excel VBA,沒你想的那麼難

1.1 Excel 中那些重複又重複的操作

1.1.1 你這樣用Excel,我要吐槽

1.1.2 重複操作,Excel 中隨處可見

1.1.3 重複的操作,就像重複的聲音

1.1.4 Excel 中也有類似的「錄音設備」

1.2 Excel 中的重複操作可以被錄製下來

1.2.1 Excel 中的「錄音設備」

Advertisements

1.2.2 用宏錄製器錄製下在Excel 中的操作

1.2.3 讓錄製下的操作再現一遍

1.3 錄製下的操作,還能這樣重現它

1.3.1 追求執行速度,就用快捷鍵

1.3.2 希望直觀形象,可以用按鈕

1.4 錄製好的宏,為什麼不能執行了

1.4.1 宏不能執行,是出於安全考慮

1.4.2 修改宏安全性,讓Excel 允許執行所有宏

1.5 Excel 用什麼記錄錄下的操作 /17

1.5.1 宏就是一串串可以控制和操作Excel 的代碼

1.5.2 學習VBA,就是學習編寫能控制和操作Excel 的代碼

1.6 VBA,就是我們和Excel 溝通的語言

1.6.1 要使用Excel,需要知道怎樣和它「溝通」

Advertisements

1.6.2 VBA,只是一種計算機編程語言的名字

1.7 Excel 已能錄製代碼,何需再動手編寫

1.7.1 錄製的宏,不能解決所有問題

1.7.2 只需簡單修改,便能讓宏的威力大增

1.7.3 自主編寫代碼,讓宏的功能更加靈活

第2章 認識編程工具,開始學習VBA 的第一步

2.1 應該在哪裡編寫VBA 程序

2.2 了解VBA 的編程工具—VBE

2.2.1 可以用哪些方法打開VBE 窗口

2.2.2 VBE 窗口中都有什麼

2.3 怎樣在VBE 中編寫VBA 程序

2.3.1 VBA 程序就是完成一個任務所需的一組VBA 代碼

2.3.2 看看VBA 程序都長什麼樣

2.3.3 動手編寫一個VBA 程序

第3章 學習語法,了解VBA 編程應遵循的規則

3.1 語法,就是語言表達時應遵循的規則

3.1.1 不懂語法,表達就會出錯

3.1.2 作為一門編程語言,VBA 也有語法

3.1.3 別擔心,VBA 語法並不複雜

3.2 VBA 中的數據及數據類型

3.2.1 在Excel 中,數據就是保存在單元格中的信息

3.2.2 數據類型,就是對同一類數據的統稱

3.2.3 VBA 將數據分為哪些類型

3.2.4 為什麼要對數據進行分類

3.3 VBA 中存儲數據的容器:變數和常量

3.3.1 程序中的數據保存在哪裡

3.3.2 變數,就是給數據預留的內存空間

3.3.3 常量,通常用於存儲某些固定的數據

3.4 在程序中使用變數存儲數據

3.4.1 聲明變數,就是指定變數的名稱及可存儲的數據類型

3.4.2 還能用這些語句聲明變數

3.4.3 給變數賦值,就是把數據存儲到變數中

3.4.4 讓變數中存儲的數據參與程序計算

3.4.5 關於聲明變數,還應掌握這些知識

3.4.6 不同的變數,作用域也可能不相同

3.4.7 定義不同作用域的變數

3.5 特殊的變數—數組

3.5.1 數組,就是同種類型的多個變數的集合

3.5.2 怎麼表示數組中的某個元素

3.5.3 聲明數組時應聲明數組的大小

3.5.4 給數組賦值就是給數組的每個元素分別賦值

3.5.5 數組的維數

3.5.6 聲明多維數組

3.5.7 聲明動態數組

3.5.8 這種創建數組的方法更簡單

3.5.9 關於數組,這些運算應該掌握

3.5.10 將數組中保存的數據寫入單元格區域

3.6 特殊數據的專用容器—常量

3.6.1 常量就像一次性的紙杯

3.6.2 聲明常量時應同時給常量賦值

3.6.3 常量也有不同的作用域

3.7 對象、集合及對象的屬性和方法

3.7.1 對象就是用代碼操作和控制的東西

3.7.2 對象的層次結構

3.7.3 集合就是多個同種類型的對象

3.7.4 怎樣表示集合中的某個對象

3.7.5 屬性就是對象包含的內容或具有的特徵

3.7.6 對象和屬性是相對而言的

3.7.7 方法就是在對象上執行的某個動作或操作

3.8 連接數據的橋樑,VBA 中的運算符

3.8.1 算術運算符

3.8.2 比較運算符

3.8.3 文本運算符

3.8.4 邏輯運算符

3.8.5 多種運算中應該先計算誰

3.9 VBA 中的內置函數

3.9.1 函數就是預先定義好的計算

3.9.2 VBA 中有哪些函數

3.10 控制程序執行的基本語句結構

3.10.1 生活中無處不在的選擇

3.10.2 用If 語句解決VBA 中的選擇問題

3.10.3 使用Select Case 語句解決「多選一」的問題

3.10.4 用For...Next 語句循環執行同一段代碼

3.10.5 用For Each...Next 語句循環處理集合或數組中的成員

3.10.6 用Do 語句按條件控制循環

3.10.7 使用GoTo 語句,讓程序轉到另一條語句去執行

3.10.8 With 語句,簡寫代碼離不開它

3.11 Sub 過程,基本的程序單元

3.11.1 VBA 過程就是完成一個任務所需代碼的組合

3.11.2 Sub 過程的基本結構

3.11.3 應該把Sub 過程寫在哪裡

3.11.4 Sub 過程的基本結構

3.11.5 過程的作用域

3.11.6 在過程中執行另一個過程

3.11.7 向過程傳遞參數 /125

3.12 自定義函數,Function 過程

3.12.1 Function 過程就是用VBA 自定義的函數

3.12.2 試寫一個自定義函數

3.12.3 使用自定義函數完成設定的計算

3.12.4 用自定義函數統計指定顏色的單元格個數

3.12.5 聲明Function 過程的語句結構

3.13 排版和註釋,讓編寫的代碼閱讀性更強

3.13.1 代碼排版,必不可少的習慣

3.13.2 為特殊語句添加註釋,讓代碼的意圖清晰明了

第4章 操作對象,解決工作中的實際問題

4.1 與Excel 交流,需要熟悉的常用對象

4.1.1 用VBA 編程就像在廚房裡燒菜

4.1.2 VBA 通過操作不同的對象來控制Excel

4.1.3 使用VBA 編程,應該記住哪些對象

4.2 一切從我開始,最頂層的Application 對象

4.2.1 用ScreenUpdating 屬性設置是否更新屏幕上的內容

4.2.2 設置DisplayAlerts 屬性禁止顯示警告對話框

4.2.3 藉助WorksheetFunction 屬性使用工作表函數

4.2.4 設置屬性,更改Excel 的工作界面

4.2.5 Application 對象的子對象

4.3 管理工作簿,了解Workbook 對象

4.3.1 Workbook 對象是Workbooks 集合中的一個成員

4.3.2 訪問對象的屬性,獲得工作簿文件的信息

4.3.3 用Add 方法創建工作簿

4.3.4 用Open 方法打開工作簿

4.3.5 用Activate 方法激活工作簿

4.3.6 保存工作簿文件

4.3.7 用Close 方法關閉工作簿

4.3.8 ThisWorkbook 與ActiveWorkbook

4.4 操作工作表,認識Worksheet 對象

4.4.1 引用工作表的3 種方法

4.4.2 用Add 方法新建工作表

4.4.3 設置Name 屬性,更改工作表的標籤名稱

4.4.4 用Delete 方法刪除工作表

4.4.5 激活工作表的兩種方法

4.4.6 用Copy 方法複製工作表

4.4.7 用Move 方法移動工作表

4.4.8 設置Visible 屬性,隱藏或顯示工作表

4.4.9 訪問Count 屬性,獲得工作簿中的工作表數量

4.4.10 容易混淆的Sheets 與Worksheets 對象

4.5 操作的核心,至關重要的Range 對象

4.5.1 用Range 屬性引用單元格

4.5.2 用Cells 屬性引用單元格

4.5.3 引用單元格,更簡短的快捷方式

4.5.4 引用整行單元格

4.5.5 引用整列單元格

4.5.6 用Union 方法合併多個單元格區域

4.5.7 Range 對象的Offset 屬性

4.5.8 Range 對象的Resize 屬性

4.5.9 Worksheet 對象的UsedRange 屬性

4.5.10 Range 對象的CurrentRegion 屬性

4.5.11 Range 對象的End 屬性

4.5.12 單元格中的內容:Value 屬性

4.5.13 訪問Count 屬性,獲得區域中包含的單元格個數

4.5.14 通過Address 屬性獲得單元格的地址

4.5.15 用Activate 與Select 方法選中單元格

4.5.16 選擇清除單元格中的信息

4.5.17 用Copy 方法複製單元格區域

4.5.18 用Cut 方法剪切單元格

4.5.19 用Delete 方法刪除指定的單元格

4.6 結合例子,學習怎樣操作對象

4.6.1 根據需求創建工作簿

4.6.2 判斷某個工作簿是否已經打開

4.6.3 判斷文件夾中是否存在指定名稱的工作簿文件

4.6.4 向未打開的工作簿中輸入數據

4.6.5 隱藏活動工作表外的所有工作表

4.6.6 批量新建指定名稱的工作表

4.6.7 批量對數據分類,並保存到不同的工作表中

4.6.8 將多張工作表中的數據合併到一張工作表中

4.6.9 將工作簿中的每張工作表都保存為單獨的工作簿文件

4.6.10 將多個工作簿中的數據合併到同一張工作表中

4.6.11 為同一工作簿中的工作表建一個帶鏈接的目錄

第5章 執行程序的自動開關—對象的事件

5.1 用事件替程序安裝一個自動執行的開關

5.1.1 事件就是能被對象識別的某個操作

5.1.2 事件是怎樣執行程序的

5.1.3 讓Excel 自動響應我們的操作

5.1.4 能自動運行的Sub 過程—事件過程

5.1.5 利用事件,讓Excel 在單元格中寫入當前系統時間

5.2 使用工作表事件

5.2.1 工作表事件就是發生在Worksheet 對象中的事件

5.2.2 Worksheet 對象的Change 事件

5.2.3 禁用事件,讓事件過程不再自動執行

5.2.4 一舉多得,巧用Change 事件快速錄入數據

5.2.5 SelectionChange 事件:當選中的單元格改變時發生

5.2.6 看看我該監考哪一場

5.2.7 用批註記錄單元格中數據的修改情況

5.2.8 常用的Worksheet 事件

5.3 使用工作簿事件

5.3.1 工作簿事件就是發生在Workbook 對象中的事件

5.3.2 Open 事件:當打開工作簿的時候發生

5.3.3 BeforeClose 事件:在關閉工作簿之前發生

5.3.4 SheetChange 事件: 更改任意工作表中的單元格時發生

5.3.5 常用的Workbook 事件

5.4 不是事件的事件

5.4.1 Application 對象的OnKey 方法

5.4.2 Application 對象的OnTime 方法

5.4.3 讓文件每隔5 分鐘自動保存一次

第6章 設計自定義的操作界面

6.1 需要用什麼來設計操作界面

6.1.1 為什麼要替程序設計操作界面

6.1.2 控制項,搭建操作界面必不可少的零件

6.1.3 在工作表中使用表單控制項

6.1.4 在工作表中使用ActiveX 控制項

6.1.5 表單控制項和ActiveX 控制項的區別

6.2 不需設置,使用現成的對話框

6.2.1 用InputBox 函數創建一個可輸入數據的對話框

6.2.2 用InputBox 方法創建交互對話框

6.2.3 用MsgBox 函數創建輸出對話框

6.2.4 用FindFile 方法顯示【打開】對話框

6.2.5 用GetOpenFilename 方法顯示【打開】對話框

6.2.6 用GetSaveAsFilename 方法顯示【另存為】對話框

6.2.7 用Application 對象的FileDialog 屬性獲取目錄名稱

6.3 使用窗體對象設計交互界面

6.3.1 設計界面,需要用到UserForm 對象

6.3.2 在工程中添加一個用戶窗體

6.3.3 設置屬性,改變窗體的外觀

6.3.4 在窗體上添加和設置控制項的功能

6.4 用代碼操作自己設計的窗體

6.4.1 顯示用戶窗體

6.4.2 設置窗體的顯示位置

6.4.3 將窗體顯示為無模式窗體

6.4.4 關閉或隱藏已顯示的窗體

6.5 用戶窗體的事件應用

6.5.1 藉助Initialize 事件初始化窗體

6.5.2 藉助QueryClose 事件讓窗體自帶的【關閉】按鈕失效

6.5.3 窗體對象的其他事件

6.6 編寫代碼,為窗體中的控制項設置功能

6.6.1 為【確定】按鈕添加事件過程

6.6.2 使用窗體錄入數據

6.6.3 給【退出】按鈕添加事件過程

6.6.4 給控制項設置快捷鍵

6.6.5 更改控制項的Tab 鍵順序

6.7 用窗體製作一個簡易的登錄窗體

6.7.1 設計登錄窗體的界面

6.7.2 設置初始用戶名和密碼

6.7.3 添加代碼,為控制項指定功能

第7章 調試與優化編寫的代碼

7.1 VBA 中可能會發生的錯誤

7.1.1 編譯錯誤

7.1.2 運行時錯誤

7.1.3 邏輯錯誤

7.2 VBA 程序的3 種狀態

7.2.1 設計模式

7.2.2 運行模式

7.2.3 中斷模式

7.3 Excel 已經準備好的調試工具

7.3.1 讓程序進入中斷模式

7.3.2 設置斷點,讓程序暫停執行

7.3.3 使用Stop 語句讓程序暫停執行

7.3.4 在【立即窗口】中查看變數值的變化情況

7.3.5 在【本地窗口】中查看變數的值及類型

7.3.6 使用【監視窗口】監視程序中的變數

7.4 處理運行時錯誤,可能會用到這些語句

7.4.1 On Error GoTo 標籤

7.4.2 On Error Resume Next

7.4.3 On Error GoTo 0

7.5 養成好習慣,讓代碼跑得更快一些

7.5.1 在程序中合理使用變數

7.5.2 不要用長代碼多次重複引用相同的對象

7.5.3 盡量使用函數完成計算

7.5.4 不要讓代碼執行多餘的操作

7.5.5 合理使用數組

7.5.6 如果不需要和程序互動,就關閉屏幕更新

Advertisements

你可能會喜歡