Excel VBA編程實戰

宋翔

  • 出版商: 清華大學
  • 出版日期: 2024-07-01
  • 定價: $594
  • 售價: 8.5$505
  • 語言: 簡體中文
  • ISBN: 7302662282
  • ISBN-13: 9787302662280
  • 相關分類: Excel
  • 下單後立即進貨 (約4週~6週)

  • Excel VBA編程實戰-preview-1
  • Excel VBA編程實戰-preview-2
  • Excel VBA編程實戰-preview-3
Excel VBA編程實戰-preview-1

相關主題

商品描述

《Excel VBA編程實戰》詳細介紹了Excel VBA編程涉及的核心知識和技術,並列舉了大量的編程示例。全書共13章和3個附錄,內容主要包括VBA語言元素和編程規範、Application對象、Workbook對象、Worksheet對象、Range對象、Shape對象、FileDialog對象、數組、字典、創建自定義函數、工作簿和工作表事件、捕獲應用程序事件、使用Excel對話框和用戶窗體、在用戶窗體中使用不同類型的控件、使用FSO對象模型和VBA內置語句處理文件和文件夾、在文本文件中讀取和寫入數據、在註冊表中讀取和寫入數據、自動控制其他Office應用程序、創建和使用類、定製功能區和快捷菜單、創建和使用加載項、調試程序並處理錯誤、VBA內置函數速查、VBA內置語句速查、VBA錯誤代碼速查等。 《Excel VBA編程實戰》附贈案例源代碼、案例的多媒體視頻教程、教學課件、電子書和模板。《Excel VBA編程實戰》結構系統,內容細致,概念清晰,案例豐富,註重技術細節的講解。本書適合所有希望學習和從事Excel VBA編程或對Excel VBA編程有興趣的用戶,還可作為各類院校和培訓班的Excel VBA教材。

目錄大綱

 

目錄

 

第1章  VBA編程概念和工具

1.1  VBA和宏簡介

1.1.1  何時需要使用VBA

1.1.2  通過錄制宏學習VBA編程

1.1.3  運行宏

1.1.4  更改宏的安全性設置

1.1.5  修改宏的相關信息和VBA代碼

1.2  VBA編程工具

1.2.1  打開VBE窗口

1.2.2  工程資源管理器

1.2.3  屬性窗口

1.2.4  代碼窗口

1.2.5  設置VBE編程選項

1.3  輸入和保存VBA代碼

1.3.1  表達式和運算符

1.3.2  使用縮進格式

1.3.3  將長代碼分成多行

1.3.4  為代碼添加註釋

1.3.5  使用InputBox函數獲取用戶輸入

1.3.6  使用MsgBox函數顯示信息

1.3.7  保存VBA代碼

1.4  變量、常量和數據類型

1.4.1  VBA支持的數據類型

1.4.2  聲明變量

1.4.3  變量的命名規則

1.4.4  為變量賦值

1.4.5  變量的作用域和生存期

1.4.6  使用常量

1.4.7  檢測和轉換數據類型

1.5  創建和調用Sub過程

1.5.1  創建Sub過程

1.5.2  調用Sub過程

1.5.3  按地址或按值傳遞參數

1.5.4  Sub過程的遞歸

1.6  創建和調用Function過程

1.6.1  創建Function過程

1.6.2  調用Function過程

1.6.3  使用VBA內置函數

1.6.4  在VBA中使用Excel工作表函數

1.7  有選擇地執行代碼

1.7.1  使用If Then Else語句根據條件選擇要執行的代碼

1.7.2  使用Select Case語句根據表達式的值執行符合條件的代碼

1.8  重復執行代碼

1.8.1  使用For Next語句重復執行代碼指定的次數

1.8.2  使用Do Loop語句在滿足條件時重復執行代碼

1.9  對象編程

1.9.1  Excel對象模型

1.9.2  引用集合中的對象

1.9.3  使用對象變量引用對象

1.9.4  對象的屬性

1.9.5  對象的方法

1.9.6  父對象和子對象

1.9.7  使用With語句提高處理同一個對象的效率

1.9.8  使用For Each語句處理集合中的對象

1.10  調試程序並處理錯誤

1.10.1  錯誤類型

1.10.2  運行代碼的幾種方式

1.10.3  監視程序中的特定值

1.10.4  在立即窗口中測試代碼

1.10.5  處理運行時錯誤

第2章  控制Excel應用程序

2.1  Application對象和全局成員

2.2  獲取Excel應用程序的基本信息

2.2.1  使用Version屬性獲取Excel版本號

2.2.2  使用UserName屬性獲取Excel用戶名

2.2.3  使用Path屬性獲取Excel的安裝路徑

2.2.4  使用StartupPath屬性獲取啟動文件夾路徑

2.2.5  使用TemplatesPath屬性獲取工作簿模板路徑

2.3  設置Excel應用程序的界面環境

2.3.1  使用Visible屬性設置Excel應用程序的可見性

2.3.2  使用WindowState屬性設置Excel窗口的顯示狀態

2.3.3  使用DisplayFullScreen屬性設置是否全屏顯示Excel

2.3.4  使用Caption屬性設置Excel標題欄

2.3.5  使用DisplayFormulaBar屬性設置是否顯示編輯欄

2.3.6  使用ShowMenuFloaties屬性設置右擊單元格是否顯示浮動工具欄

2.3.7  使用ShowDevTools屬性設置是否顯示“開發工具”選項卡

2.3.8  使用StatusBar屬性設置在狀態欄中顯示的信息

2.3.9  使用DisplayAlerts屬性設置警告信息的顯示方式

2.3.10  使用DefaultFilePath屬性設置打開文件的默認路徑

2.3.11  使用SheetsInNewWorkbook屬性設置新工作簿中的工作表數

2.3.12  使用StandardFont和StandardFontSize屬性設置工作簿的默認字體和字號

2.4  Excel應用程序的特殊操作

2.4.1  使用ScreenUpdating屬性控制屏幕刷新

2.4.2  使用Evaluate方法將字符串轉換為對象或值

2.4.3  使用OnTime方法定時運行VBA程序

2.4.4  使用OnKey方法為VBA程序設置快捷鍵

第3章  處理工作簿和工作表

3.1  使用Workbooks集合和Workbook對象處理工作簿

3.1.1  從Workbooks集合中引用工作簿

3.1.2  使用Add方法創建新的工作簿

3.1.3  使用Open方法打開工作簿

3.1.4  獲取工作簿的路徑和名稱

3.1.5  使用Save和SaveAs方法保存工作簿

3.1.6  使用Close方法關閉工作簿

3.1.7  關閉多餘的工作簿窗口

3.1.8  設置打開工作簿的密碼

3.1.9  刪除所有已打開的工作簿中的密碼

3.2  使用Worksheets集合和Worksheet對象處理工作表

3.2.1  從Worksheets集合和Sheets集合中引用工作表

3.2.2  判斷工作表的類型

3.2.3  判斷工作表是否處於保護狀態

3.2.4  使用Add方法添加新的工作表

3.2.5  使用Activate和Select方法激活和選擇工作表

3.2.6  使用Name屬性設置工作表的名稱

3.2.7  使用Move方法移動工作表

3.2.8  使用Copy方法復制工作表

3.2.9  使用Visible屬性設置工作表的可見性

3.2.10  使用Delete方法刪除工作表

3.2.11  將工作簿中的每個工作表保存為獨立的工作簿

第4章  引用單元格和單元格區域

4.1  使用Activate方法和ActiveCell屬性引用活動單元格

4.2  使用Select方法和Selection屬性引用選中的單元格

4.3  使用Range屬性引用單元格

4.3.1  引用活動工作表中的單個單元格

4.3.2  引用活動工作表中的單元格區域

4.3.3  引用非活動工作表中的單元格

4.3.4  在Range屬性中使用變量

4.4  使用Cells屬性引用單元格

4.4.1  引用工作表或單元格區域中的所有單元格

4.4.2  引用工作表或單元格區域中的特定單元格

4.4.3  在Cells屬性中使用變量

4.4.4  使用Cells屬性以索引號的方式引用單元格

4.4.5  在Range屬性中使用Cells屬性

4.5  使用Rows和EntireRow屬性引用行

4.5.1  使用Rows屬性引用工作表或單元格區域中的行

4.5.2  使用EntireRow屬性引用單元格區域中的整行

4.6  使用Columns和EntireColumn屬性引用列

4.6.1  使用Columns屬性引用工作表或單元格區域中的列

4.6.2  使用EntireColumn屬性引用單元格區域中的整列

4.7  使用Offset屬性引用偏移後的單元格

4.7.1  偏移單元格

4.7.2  偏移單元格區域

4.8  使用Resize屬性調整引用的單元格區域的大小

4.8.1  擴大單元格區域

4.8.2  縮小單元格區域

4.9  使用Union方法引用不相鄰的單元格區域

4.10  使用Intersect方法引用多個單元格區域的重疊部分

4.11  使用CurrentRegion屬性引用連續數據區域

4.12  使用UsedRange屬性引用已使用的單元格區域

4.13  使用End屬性引用數據區域的邊界

4.14  使用SpecialCells方法引用特定類型的單元格

4.15  使用Find方法查找數據區域中的最後一個單元格

4.16  使用InputBox方法引用由用戶選擇的單元格

4.16.1  讓用戶選擇要引用的單元格

4.16.2  判斷是否單擊了“取消”按鈕

第5章  處理單元格中的數據

5.1  在單元格中輸入數據和公式

5.1.1  在單個單元格中輸入數據

5.1.2  在單元格區域中輸入數據

5.1.3  在多個不相鄰的單元格區域中輸入數據

5.1.4  根據一列中的值在同行的另一列中輸入數據

5.1.5  在一列中輸入某月每一天的日期

5.1.6  使用Value屬性或Formula屬性輸入公式

5.1.7  使用FormulaArray屬性輸入數組公式

5.2  設置數據格式

5.2.1  設置字體格式

5.2.2  設置對齊方式

5.2.3  設置填充格式

5.3  編輯單元格中的數據

5.3.1  使用PasteSpecial方法執行選擇性粘貼

5.3.2  使用Replace方法替換多個單元格中的數據

5.3.3  刪除數據

5.3.4  刪除數據區域中的所有日期

5.3.5  刪除數據區域中的所有空行

5.4  使用數組提高數據處理效率

5.4.1  創建索引號從0開始的數組

5.4.2  創建索引號從1開始的數組

5.4.3  確定數組的下限和上限

5.4.4  使用Array函數創建數組

5.4.5  創建二維數組

5.4.6  創建動態數組

5.4.7  使用數組在單元格區域中讀取和寫入數據

5.5  使用字典提高數據處理效率

5.5.1  創建字典對象

5.5.2  在字典中添加數據

5.5.3  刪除字典中的數據

5.5.4  獲取字典中的所有關鍵字和值

5.5.5  使用字典提取數據區域中的不重復數據

5.6  創建自定義函數以增強數據處理能力

5.6.1  創建自定義函數的註意事項

5.6.2  為自定義函數添加幫助信息

5.6.3  將數據按照字符倒序排列

5.6.4  提取文本中的多段數字

5.6.5  根據單元格填充色對數據求和

5.6.6  統計數據區域中不重復值的數量

5.6.7  提取數據區域中的不重復值

5.6.8  在一行或一列中輸入指定起始值和終止值的連續編號

第6章  處理圖形對象

6.1  從Shapes或ShapeRange集合中引用圖形對象

6.2  獲取和設置圖形對象的基本信息

6.2.1  使用Name屬性獲取和設置圖形對象的名稱

6.2.2  使用ZOrderPosition屬性獲取圖形對象的索引號

6.2.3  使用Type屬性獲取圖形對象的類型

6.2.4  使用Left和Top屬性獲取和設置圖形對象的位置

6.2.5  使用TopLeftCell和BottomRightCell屬性獲取圖形對象的位置

6.3  插入和刪除圖形對象

6.3.1  使用AddShape方法插入自選圖形

6.3.2  使用AddPicture方法插入圖片

6.3.3  選擇特定類型的圖形對象

6.3.4  使用Delete方法刪除工作表中的圖形對象

6.4  設置圖形對象的填充格式

6.4.1  為自選圖形設置純色填充

6.4.2  為自選圖形設置漸變填充

6.4.3  為自選圖形設置圖片填充

6.5  設置圖形對象的邊框格式

第7章  事件編程

7.1  事件編程基礎

7.1.1  Excel支持的事件類型和觸發順序

7.1.2  為事件編寫代碼

7.1.3  啟用和禁用事件

7.2  工作簿的Open事件

7.2.1  打開工作簿時顯示歡迎信息

7.2.2  打開工作簿時驗證用戶名

7.2.3  打開工作簿時創建鼠標快捷菜單

7.3  工作簿和工作表的Activate事件

7.3.1  激活工作簿時設置其顯示方式

7.3.2  激活工作表時顯示其中已使用的單元格範圍

7.4  工作簿和工作表的Deactivate事件

7.4.1  在工作簿失去焦點時恢復原始的顯示方式

7.4.2  在工作表失去焦點時顯示提示信息

7.5  工作簿的BeforeClose事件

7.5.1  不顯示保存提示而直接保存並關閉工作簿

7.5.2  使用自定義對話框代替默認的保存提示對話框

7.6  工作簿的BeforeSave事件

7.6.1  禁止保存工作簿

7.6.2  禁止另存工作簿

7.6.3  禁止保存和另存工作簿

7.7  工作簿的BeforePrint事件

7.7.1  確定是否真正開始打印

7.7.2  打印前檢查數據是否填寫完整

7.8  工作簿的SheetActivate事件

7.8.1  顯示激活的工作表的名稱和類型

7.8.2  檢查激活的工作表是否為空並詢問用戶是否將其刪除

7.9  工作簿的SheetDeactivate事件

7.10  工作簿的NewSheet事件

7.10.1  添加工作表時顯示該工作表的類型和工作表總數

7.10.2  添加工作表時自動以月份命名

7.11  工作簿的SheetChange事件

7.12  工作簿的SheetSelectionChange事件

7.12.1  動態顯示選區地址及其中的空白單元格的數量

7.12.2  自動高亮顯示選區所在的整行和整列

7.13  工作簿的SheetBeforeRightClick事件

7.14  工作簿的SheetBeforeDoubleClick事件

7.15  工作表的Change事件

7.16  工作表的SelectionChange事件

7.17  工作表的BeforeRightClick事件

7.18  工作表的BeforeDoubleClick事件

第8章  使用對話框和用戶窗體

8.1  使用Application對象創建對話框

8.1.1  使用GetOpenFilename方法創建“打開”對話框

8.1.2  使用GetSaveAsFilename方法創建“另存為”對話框

8.2  使用FileDialog對象創建對話框

8.2.1  顯示不同類型的對話框

8.2.2  在對話框中顯示默認文件夾

8.2.3  設置在對話框中顯示的文件類型

8.2.4  在對話框中選擇一個或多個文件

8.2.5  打開或保存文件

8.3  創建和操作用戶窗體

8.3.1  創建用戶窗體的基本流程

8.3.2  創建用戶窗體

8.3.3  設置用戶窗體的屬性

8.3.4  顯示和關閉用戶窗體

8.3.5  模式和無模式的用戶窗體

8.3.6  使用變量引用用戶窗體

8.3.7  使用一個用戶窗體模塊創建多個用戶窗體

8.3.8  編寫用戶窗體的事件過程

8.3.9  禁用用戶窗體中的“關閉”按鈕

第9章  在用戶窗體中使用控件

9.1  控件的基本概念和通用操作

9.1.1  控件類型

9.1.2  管理工具箱中的控件

9.1.3  在用戶窗體中添加控件

9.1.4  選擇一個或多個控件

9.1.5  設置控件的屬性

9.1.6  調整控件的大小

9.1.7  設置控件的位置和對齊方式

9.1.8  設置控件的Tab鍵順序

9.1.9  在代碼中引用控件

9.1.10  編寫控件的事件過程

9.1.11  控件的Controls集合

9.2  命令按鈕

9.2.1  指定默認的“確定”按鈕和“取消”按鈕

9.2.2  單擊按鈕時自動切換顯示標題

9.3  文本框

9.3.1  創建限制字符長度的密碼文本框

9.3.2  創建顯示多行文本的文本框

9.3.3  將文本框中的內容添加到工作表的A列

9.3.4  放大顯示在文本框中輸入的每一個字符

9.4  數值調節鈕和滾動條

9.4.1  使用數值調節鈕設置密碼位數

9.4.2  使用數值調節鈕指定在工作表中選擇的行範圍

9.4.3  使用滾動條放大字符的顯示比例

9.5  選項按鈕和復選框

9.5.1  使用選項按鈕實現單項選擇功能

9.5.2  使用多組選項按鈕實現多項選擇功能

9.5.3  使用復選框選擇多項

9.6  列表框和組合框

9.6.1  將工作表中的單列數據添加到列表框或組合框中

9.6.2  將工作表中的多列數據添加到列表框或組合框中

9.6.3  將未存儲在工作表中的數據添加到列表框或組合框中

9.6.4  在列表框中選擇多個選項

9.6.5  修改在列表框中選中的選項

9.6.6  在列表框中移動選項的位置

9.6.7  將列表框中的一項或多項數據添加到工作表中

9.7  圖像

9.7.1  顯示指定的圖片

9.7.2  由用戶選擇要顯示的圖片

9.7.3  隨機顯示圖片

9.8  控件綜合應用——創建用戶登錄窗口

第10章  處理文件和文件夾

10.1  使用VBA內置的函數和語句操作文件和文件夾

10.1.1  處理文件和文件夾的VBA內置函數和語句

10.1.2  使用Dir函數判斷文件和文件夾是否存在

10.1.3  列出指定文件夾中的所有文件

10.1.4  使用MkDir語句創建文件夾

10.1.5  使用RmDir語句刪除文件夾

10.1.6  使用Name語句修改文件和文件夾的名稱

10.1.7  使用Name語句移動文件

10.1.8  使用FileCopy語句復制文件

10.1.9  使用Kill語句刪除文件

10.2  使用FSO對象模型操作文件和文件夾

10.2.1  瞭解FSO對象模型

10.2.2  創建FSO對象模型中的頂層對象

10.2.3  引用指定的驅動器、文件夾和文件

10.2.4  判斷驅動器、文件夾和文件是否存在

10.2.5  列出指定文件夾中的所有文件

10.2.6  創建文件和文件夾

10.2.7  移動文件和文件夾

10.2.8  復制文件和文件夾

10.2.9  刪除文件和文件夾

10.2.10  修改文件和文件夾的名稱

10.3  在文本文件中讀取和寫入數據

10.3.1  使用Open語句和Close語句打開和關閉文本文件

10.3.2  使用Write語句將數據寫入文本文件

10.3.3  使用Print語句將數據寫入文本文件

10.3.4  使用Input語句讀取文本文件中的數據

10.3.5  使用Line Input語句讀取文本文件中的數據

10.3.6  使用TextStream對象讀取和寫入文本文件中的數據

第11章  VBA高級編程技術

11.1  在註冊表中讀取和寫入數據

11.1.1  註冊表的結構

11.1.2  使用SaveSetting語句將數據寫入註冊表

11.1.3  使用GetSetting函數讀取特定鍵值

11.1.4  使用GetAllSettings函數讀取特定子鍵中的所有鍵值

11.1.5  使用DeleteSetting語句刪除註冊表中的鍵值

11.1.6  在所有工作表中同步顯示或隱藏網格線

11.2  自動控制其他Office應用程序

11.2.1  自動化的基本概念

11.2.2  前期綁定

11.2.3  後期綁定

11.2.4  啟動Word的一個新實例並創建文檔

11.2.5  在已啟動的Word中創建文檔

11.2.6  在Word中打開文檔

11.2.7  將Excel工作表中的數據寫入新建的Word文檔

11.3  創建和使用類

11.3.1  瞭解類和類模塊

11.3.2  創建新的類及其屬性和方法

11.3.3  使用類創建和使用對象

11.3.4  使用Property過程創建可靈活控制的屬性

11.3.5  同時處理多個同類型的控件

11.3.6  捕獲應用程序事件

第12章  為程序設計功能區界面和快捷菜單

12.1  功能區開發基礎

12.1.1  功能區的結構

12.1.2  Excel文件的內部結構

12.1.3  定製功能區的整體流程和工具

12.1.4  控件類型

12.1.5  控件屬性

12.1.6  控件回調

12.2  定製功能區

12.2.1  創建實現控件功能的VBA過程

12.2.2  編寫定製功能區的RibbonX代碼

12.2.3  在Excel文件內部創建customUI文件夾

12.2.4  將customUI.xml文件移入customUI文件夾

12.2.5  為RibbonX代碼和工作簿建立關聯

12.2.6  測試定製後的功能區

12.3  定製快捷菜單

12.3.1  引用內置的快捷菜單

12.3.2  在快捷菜單中添加菜單項

12.3.3  創建新的快捷菜單

12.3.4  為菜單項分組

12.3.5  隱藏和禁用菜單項

12.3.6  重置和禁用快捷菜單

12.3.7  刪除菜單項和快捷菜單

12.3.8  定製快捷菜單時的防錯設置

第13章  創建和使用加載項

13.1  瞭解加載項

13.2  創建加載項

13.2.1  為加載項添加標題和描述信息

13.2.2  保護VBA工程

13.2.3  將工作簿轉換為加載項

13.3  管理加載項

13.3.1  安裝和卸載加載項

13.3.2  修改並保存加載項

13.3.3  從“加載項”對話框中刪除加載項

13.4  使用VBA操作加載項

13.4.1  AddIns集合和AddIn對象

13.4.2  自動將加載項添加到“加載項”對話框中

13.4.3  自動安裝和卸載所有加載項

13.4.4  安裝和卸載加載項時顯示提示信息

附錄A  VBA內置函數速查

附錄B  VBA內置語句速查

附錄C  VBA錯誤代碼速查