您的位置:首頁>正文

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 中的“錄音設備”

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, 需要知道怎樣和它“溝通”

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 如果不需要和程式互動,就關閉螢幕更新

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 如果不需要和程式互動,就關閉螢幕更新

同類文章
Next Article
喜欢就按个赞吧!!!
点击关闭提示