-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
10/8 新書到! 10/1 新書到! 9/24 新書到! 9/18 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

Excel 2010 VBA入門與提高

( 簡體 字)
作者:黃朝陽類別:1. -> Office -> OFFICE -> EXCEL
譯者:
出版社:電子工業出版社Excel 2010 VBA入門與提高 3dWoo書號: 37960
詢問書籍請說出此書號!

缺書
不接受訂購

出版日:4/1/2014
頁數:524
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
不接受訂購
ISBN:9787121224621
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

感謝您選擇“Excel 疑難千尋千解”叢書之《Excel 2010 VBA入門與提高》!
Excel具有強大的數據處理能力。由于其操作的便捷性和數據展現的直觀性,被越來越多的需要與數據處理打交道的用戶所使用。也有越來越多的用戶將Excel作為日常管理中必不可少的工具。正因為如此,VBA編程開發技術也受到越來越多的用戶的青睞。Excel自2003版本以來至2010版本,VBA已經升級為7.0版本,其功能逐漸被豐富,性能得到了極大的提升。通過使用VBA,可以實現數據的極速處理,讓您從繁重的數據工作中脫離出來;通過使用VBA,可以讓您方便地實現行政、人事、供應鏈、財務等方面的基礎管理工作。熟練掌握VBA技術可以極大地提升您的工作效率,讓您有更多的時間投入到核心業務中去,為您的職業發展道路提供更多的可能。
本書由153個實用的案例構成,由淺入深、由易到難地向您展示VBA在實際工作中的應用。每個案例都配有詳細的原理解釋、代碼注釋以及解題思路分析,讓您能夠輕松掌握VBA編程技術的精髓,以更快地將其中的技術應用到實際工作中。
叢書介紹
“Excel疑難千尋千解”叢書是由Excel技巧網(Exceltip.net技術社區)的負責人、微軟最有價值專家(MVP)黃朝陽先生策劃并組織編寫的一套系列書籍。
Excel技巧網旨在重點推廣Excel 2010及今后更高版本的應用,并為廣大Excel愛好者提供一個內容充實、分類清晰、經典實用、精彩紛呈,便于大家學習和交流的平臺。社區成立不久便吸引了眾多微軟MVP和有志于推廣電子表格應用技術的高手駐足,長期為網友免費解答疑難問題,并勤于將精彩的答疑帖子按其所涉及的知識和應用兩個維度,整理成為原創技術文章。
社區設有討論、文章、資源三大技術專區,并按照Excel的功能歸屬將主題分為基礎應用、數據透視表、條件格式、函數與公式、圖表與圖形、VBA、SQL in Excel、綜合應用等方面,本叢書的各讀本正是基于相近的主題分類。
本叢書由黃朝陽、王建發、陳國良、陳樹青、榮勝軍、李懿等微軟MVP,以及羅剛君、李術彬、林盤生、章蘭新等多位社區資深版主聯手打造,將來還將邀請更多的高級會員加盟參與叢書其他讀本的創作。其中,《Excel 2010 操作與技巧》《Excel 2010函數與公式》《Excel 2010 VBA編程與實踐》《Excel 2010 SQL完全應用》已先于第一批出版,近期還將陸續推出《Excel 2010圖表與圖形》《Excel 2010 VBA入門與提高》等讀本。
得益于多年來社區答疑的磨礪,作者們將豐富的實戰經驗付諸筆端,精心設計了上千案例,將Excel方方面面的知識點融入其中。每個案例都采用一般用戶遇到疑難時最可能的提問方式和應用場景對問題進行描述,提供具有針對性的解決方案和詳盡的操作步驟,并配合以原理分析和知識擴展環節,既授人以魚,又授人以漁。叢書全系提供“疑難”加“知識點”的特色目錄索引,方便讀者根據需要快速地查找。對于渴望學習和擁有新知識的Excel用戶來說,與其千百次地找尋問題答案,不如靜心地讀此叢書一卷。
編寫本叢書的過程中,我們得到了電子工業出版社計算機圖書出版分社張慧敏等多位編輯的大力支持,特在此表示深切的謝意!
讀者對象
本書使用Excel 2010軟件進行編寫,但是在編寫過程中,作者特意注重程序的通用性,盡量保證每個案例的解決方案都通用于Excel 2003、Excel 2007和Excel 2010。
本書通過153個案例,包含3個綜合應用案例,闡釋了VBA基礎編程技術以及其核心的技巧。適合所有的辦公制表人士,特別是需要提升工作效率及需要深入研究VBA者學習之用。如果您沒有VBA基礎,那么本書是一本極其有用的入門級教材,它將由淺入深向您展現VBA編程技術,幫助您理解VBA的核心編程技術,并能夠在實際工作中使用VBA提高工作效率。如果您已經有VBA基礎,那么本書是一本幫助您整理知識點并拓展思路的提高教材。本書將向您提供完整的VBA知識架構、全面的解決方案以及解決問題的思考方法。如果您已經是一位VBA資深開發人員,本書可以作為您隨手的參考書,書中所提供的代碼只需要稍作改動,即可應用于實際問題。
閱讀指南
本書包括12章,涉及Excel VBA的每個方面。其中,第1章至第4章為Excel VBA基礎知識。第5章為問題解決思路。第6章至第10章為VBA的擴展應用,包括數據轉換、自定義過程和函數的開發、對話框交互操作、控件和窗體的應用以及自定義功能區。第11章為程序的錯誤調試。第12章為綜合開發實戰。每章都根據所涉及的知識點的不同,選取了實用的案例,并為讀者準備了相應的思考和練習題。
詳細的章節內容如下。
第1章 認識VBA
本章主要介紹如何通過錄制宏獲取VBA代碼,并且介紹了VBA的基礎知識、基本語法以及基本語句。幫助讀者入門VBA編程,為之后章節的學習提供理論基礎。
第2章 數據的基本處理
本章介紹如何使用VBA代碼對Excel的單元格以及單元格區域進行操作,其中包括單元格的讀取、寫入、查找、格式設置等操作,并使用了常見的案例闡述如何使用這些基礎操作解決實際問題。
第3章 VBA常用函數和語句
本章主要介紹VBA中常用的函數和語句,并結合前兩章所學的知識和案例進一步說明函數和語句的使用方法。
第4章 多表數據處理
本章說明了跨工作表、跨工作簿進行數據處理的基本方法,以及如何應用事件程序實現Excel中“自動完成”的功能。
第5章 數據處理的綜合應用
本章是前4章所學知識點的總結和綜合應用,進一步闡述數據處理的解決思路,并引入數組以進一步提高數據處理的速度。
第6章 數據的轉換
本章介紹如何實現Excel數據與其他數據形式的轉換,其中包括如何從Access、文本文件中導入數據,以及如何將Excel的數據導出到所需的數據格式中。為實現跨數據平臺系統的開發提供了基礎。
第7章 自定義過程和函數的開發
本章介紹如何開發自定義過程和函數,并將開發成果應用于工作表,從而教會讀者如何將類似的數據處理合并為同一個過程或者函數進行處理,并引用參數傳遞,使程序更具通用性。為開發更復雜的程序提供必備的技術。
第8章 Excel對話框操作
本章向讀者介紹如何通過VBA對話框操作實現Excel程序與用戶間的交互,為實現更好的用戶體驗提供有力的工具。
第9章 控件和窗體的應用
本章介紹了如何使用控件和窗體使Excel程序更專業,并通過使用控件和窗體實現更多豐富的功能。為打造專業的Excel程序提供專業的界面設計。
第10章 自定義功能區
本章介紹如何定制Excel的功能區,以及功能區控件的基本操作。為設計專用的Excel程序工作簿提供了可能性,并為Excel插件的開發提供了便捷的用戶交互的窗口。
第11章 程序的錯誤調試
本章介紹常見的錯誤調試的方法以及VBE提供的程序調試工具,幫助讀者自行解決在編程中遇到的各種錯誤和問題。同時也介紹如何使用錯誤的自動處理開發完善的程序。
第12章 綜合開發實戰
本章以制作通用的工具、調查表及信息收集系統、簡易收發管理程序為切入口,向讀者展示開發綜合型Excel VBA程序的思路、方法和具體實現的步驟。
本書約定
為了熟悉本書對鼠標操作、鍵盤指令等描述方式,從而更順暢地閱讀本書,您有必要了解以下內容。
本書中表示連續的多個菜單指令時,使用右箭頭“→”進行連接,例如:單擊“開發工具”選項卡→“插入”→“按鈕(窗體控件)”,表示依次單擊“開發工具”選項卡的“插入”按鈕,在彈出的子菜單中選擇“按鈕(窗體控件)”菜單。
本書中表示鼠標操作時,均使用標準的表示方法。其中“指向”表示將鼠標指針移到對象之上,且不單擊任何按鈕;而“點擊”特指利用鼠標左鍵單擊目標;“右鍵點擊”表示利用鼠標的右鍵單擊對象;“雙擊”表示快速按下鼠標左鍵兩次;“拖放”則表示按下鼠標左鍵不松開的狀態下拖動鼠標,拖到目標區域后再放開鼠標左鍵。
本書中表示按鍵時使用括號“【】”號來表示,例如:“按組合鍵【Ctrl+Shift+Enter】”表示同時按下鍵盤上的Ctrl鍵、Shift鍵和Enter鍵。而“【F5】”則表示按下鍵盤上方的“F5”鍵。
本書的VBA代碼均不區分大小寫,在編寫代碼時可以隨意,但代碼錄入到代碼窗口后,VBA會將代碼自動轉換成其內置的大小寫形式或者變量聲明時的大小寫形式,帶引號的文本字符串和變量名除外。
本書特點
本書與市場上其他Excel VBA書籍有很大的不同,文體結構新穎,案例貼近實際,講解深入透徹。主要表現在以下幾方面:
場景式提問
本書從成千上萬的網友提問中精心歸納、提煉出各類問題,并還原為貼近真實的求助語言及案例,方便讀者搜尋與實際工作相似的問題。
開創式結構
本書案例中的“解決方案”環節是對問題的思路解說,結合“操作方法”環節中的步驟讓人更容易理解。“原理分析”環節則主要解釋所使用代碼的工作原理或者詳細解釋思路。“知識擴展”環節包括與案例相關的知識點的補充,可拓展讀者的視野,同時也有利于理解案例本身的解決思路。
漸進式章節
精心設計的章節和案例,使本書中各章節知識點循序漸進,方便讀者鞏固已學的知識,又不會因為知識點的缺失而造成閱讀和學習的困難。
啟發式描述
本書注重培養讀者解決問題的思路,以最樸實的思維方式結合啟發式的描述,幫助讀者發現規律、總結規律和運用規律,從而啟發讀者快速找出問題的解決方法。
學習方法
本書是VBA入門與提高的教材,其宗旨在于不但介紹如何編寫VBA程序,更著重介紹如何編寫VBA程序解決實際工作的疑難,以及對同類的問題提供解決思路。
書中前4章的結構是從易到難,由基礎到提高,建議讀者順序閱讀,以掌握VBA以及VBA操作Excel的基本方法。從第5章開始,其結構雖然是從易到難,但章節之間相互獨立,即可以從任意章節開始學習,不需要遵照從前至后的順序閱讀。
本書配有示例文件,讀者需將示例文件放置于D盤“千尋千解VBA”目錄下,方可保證程序正確運行。本書中所有代碼均針對書中案例所編寫,不具備通用性,但只需略做修改即可應用于各類實際問題。本書所有代碼在Windows 7中文版和Office 2010中文版下運行通過。

售后服務
本書由Excel技巧網(ExcelTip.Net技術社區)出品,讀者在閱讀過程中有任何疑難或者建議、BUG反饋等都可以到社區發帖,包括求助、交流,也可以在本社區下載與本書相關的文檔。社區專門為本叢書開辟了一個專區提供編讀往來,地址如下:
http://www.exceltip.net/forum-75-1.html
同時,本書也配備了專門的QQ群做售后服務,群號公布于上述網頁中,讀者可以申請加入群中與作者進行面對面的交流。
作者與致謝
本書由黃朝陽策劃,李懿負責編寫與統稿。
本書在編寫過程中,得到了榮勝軍、陳樹青、林盤生、薛宇鋒、王建發、陳果良、羅剛君、李術彬、章蘭新等多位Exceltip.net社區版主和會員的支持與幫助,在此向他們表示衷心的感謝。
盡管作者們對書中的案例精益求精,但疏漏仍然在所難免,如果您發現書中的錯誤或某個案例有更好的解決方案,敬請登錄社區網站向作者反饋,我們將盡快在社區中給出回復,且在本書再次印刷時修正。
再次感謝您的支持!
作 者
內容簡介:

本書著重于Excel VBA的基礎知識和技巧,通過153個實例為讀者展示應用VBA解決實際問題的思路和方法,并展示了常規VBA數據處理的要點,幫助讀者學會解決實際問題的思考方式。閱讀本書后,讀者可以掌握VBA的基本語法、數據處理、自定義函數的編寫、功能區設計等重要技術,并將其應用于實際工作中,從而極大地提升工作效率和數據處理的正確性。
書中的每個案例采取疑難描述、解決方案、操作方法、原理分析、知識擴展五個步驟進行講解,力圖在解決問題的同時讓讀者可以通曉其思路和原理。所有的案例均在Windows 7環境下使用Excel 2010編寫完成并通過測試,其中的絕大部分代碼可適用于Excel 2003和Excel 2007。

目錄:

第1章 認識VBA 1
第1節 認識宏 1
疑難1 如何開啟“開發工具”選項卡 1
※在Excel 2007中開啟“開發工具”選項卡※ 2
疑難2 如何錄制和運行宏 3
※宏代碼保存的位置※ 4
疑難3 如何編輯宏 5
※利用按鈕運行宏※ 8
疑難4 如何保存帶有宏的工作簿 8
疑難5 如何屏蔽保存工作簿時的隱私警告 9
疑難6 如何設置宏的安全性 10
疑難7 如何創建和使用數字證書簽名 12
第2節 認識VBE 15
疑難8 如何打開VB編輯器 15
疑難9 VB編輯器包含哪些窗口 16
※VBE各窗口簡介※ 16
※VBE各窗口位置的調整※ 17
※VBE各窗口的顯示或隱藏※ 17
疑難10 VB編輯器包括哪些工具欄 18
第3節 VBA代碼編寫及幫助信息 18
疑難11 如何創建VBA程序 18
※VBA代碼編寫格式※ 20
疑難12 如何運行及調用VBA程序 21
※立即窗口的作用※ 22
疑難13 如何導入或導出VBA代碼 22
疑難14 如何獲取VBA幫助 24
疑難15 如何使用對象瀏覽器 25
※對象瀏覽器※ 26
第4節 VBA基礎 26
疑難16 如何定義變量使VBA程序更靈活 26
※聲明變量※ 27
※變量名的命名規則※ 27
※VBA的數據類型※ 27
※數據類型的分類及表示方式※ 28
※變量的賦值※ 29
※變量的讀取※ 30
※VBA常量※ 30
※定長字符串與變長字符串※ 30
※隱式聲明※ 31
疑難17 如何使多個程序共享變量 31
※作用域※ 32
※全局變量※ 32
※局部變量※ 32
※模塊級變量※ 32
※同名變量※ 33
疑難18 如何進行變量類型的轉換 33
※VBA中的類型轉換函數※ 34
※整數的類型轉換※ 35
※字符的類型轉換※ 35
※數據類型的隱式轉換※ 35
疑難19 如何防止變量名稱拼寫錯誤 36
※Option Explicit語句※ 36
※強制顯式聲明變量設置※ 37
※使用編譯功能查錯※ 37
疑難20 如何利用VBA進行計算 38
※文本連接※ 39
※算術四則運算※ 39
※指數運算※ 39
※整除※ 39
※計算余數※ 39
※比較運算※ 39
※運算優先級※ 40
※在文本中表示雙引號("”)※ 40
疑難21 如何分段計算獎金系數 40
※IF分支結構※ 41
※邏輯運算符※ 44
※Select…Case分支結構※ 45
※Select…Case分支結構的條件※ 46
※Select和IF分支結構的區別※ 46
疑難22 如何檢驗文本是否以字母開頭 47
※Like運算符※ 48
※VBA比較模式※ 48
疑難23 如何判斷某個數是否為質數 49
※Do…Loop循環※ 50
※退出Do…Loop循環※ 52
※For…Next循環※ 53
※退出For…Next循環※ 54
※死循環※ 54
※退出多層循環※ 54
※Goto語句和行標簽※ 54
第5節 練習與思考 55
第2章 數據的基本處理 56
第1節 單元格的選取與賦值 56
疑難24 如何選取單元格 56
※對象的概念※ 57
※對象的屬性和方法※ 57
※單元格對象Range的表示方法※ 57
※單元格對象Cells的表示方法※ 58
※單元格對象的Select方法※ 59
※使用對象變量表示單元格對象※ 59
※Evaluate方法表示單元格對象※ 59
※Evaluate方法的簡寫模式※ 60
※Evaluate方法的一般模式與簡寫模式的區別※ 60
疑難25 如何選取單元格區域 60
※以地址表示矩形單元格區域對象※ 61
※以對角單元格表示矩形單元格區域對象※ 61
※不規則單元格區域的表示※ 62
※使用Union方法獲取合并區域※ 62
※使用Intersect方法獲取多個區域的交集※ 63
疑難26 如何讀取單元格的值和顯示的值 64
※單元格對象的Value屬性※ 64
※單元格對象的Text屬性※ 65
※自動列出成員※ 65
※單元格的數字格式屬性※ 66
疑難27 如何進行單元格批量賦值 66
※利用Value屬性給單元格賦值※ 67
※For Each…Next循環※ 68
※使用For Each…Next循環的注意事項※ 68
※利用Value屬性給單元格區域賦值※ 69
※單元格(Range)對象的Address屬性※ 69
疑難28 如何向單元格輸入公式 70
※利用Formula屬性給單元格輸入公式※ 71
※Formula屬性和Value屬性的聯系與區別※ 71
※利用FormulaR1C1屬性給單元格輸入公式※ 72
※R1C1引用樣式的規則※ 72
※通過代碼實現粘貼值※ 73
※使用VBA替代公式實現計算※ 73
疑難29 如何在VBA中使用工作表函數進行計算 73
※WorksheetFunction對象※ 74
※VBA中使用工作表函數※ 75
※獲取VBA中工作表函數的幫助※ 75
第2節 單元格的格式設置 75
疑難30 如何快速設置標題行格式 75
※With語句※ 76
※With語句的嵌套※ 76
※Interior對象※ 77
※Font對象※ 78
※單元格的對其方式※ 78
※Selection對象※ 78
※利用錄制宏獲取格式設置代碼※ 79
※通用的格式設置對象※ 79
疑難31 如何批量生成上標 79
※Characters對象※ 80
※Font對象的 Superscript屬性※ 80
※設置Characters對象Font的注意事項※ 80
※Characters屬性的通用性※ 81
疑難32 如何快速將列進行分組 81
※Columns對象和Rows對象※ 82
※單列和單行的表示※ 82
※多列和多行的表示※ 82
※Group方法和Ungroup方法※ 82
※單元格對象的EntireColumn屬性和EntireRow屬性※ 82
※單元格區域的Columns屬性和Rows屬性※ 83
※Outline對象※ 84
疑難33 如何批量合并相同單元格 84
※Range的Merge方法合并單元格※ 85
※VBA運行時關閉警告※ 85
※多行中相同的內容處理※ 86
疑難34 如何創建圖片批注 86
※批注(Comment)對象※ 87
※批注的添加與刪除※ 87
※FillFormat對象※ 88
※On Error語句※ 88
第3節 單元格的定位與查找 89
疑難35 如何利用VBA程序定義條件格式 89
※VBA條件格式的原理※ 90
※表示整行的方法※ 91
※日期函數DateSerial※ 91
※利用工作表事件實時設置格式※ 91
疑難36 如何一次性替換所有的錯誤值 91
※Range對象的Find方法※ 92
※參數省略表示法※ 93
※查找格式※ 94
※使用Is Nothing判斷對象是否初始化※ 94
※IsError函數※ 94
※SpecialCells方法※ 95
※Find方法的一般形式※ 96
※CVErr函數※ 97
疑難37 如何獲取最后一行數據的行數 97
※使用Find方法查找最后的單元格※ 99
※Find方法按行查找和按列查找的區別※ 99
※獲取工作表總行數※ 100
※單元格對象的End屬性※ 101
※End屬性的局限性※ 101
※其他獲取最后數據行行號的方法※ 102
疑難38 如何按顏色查找單元格 102
※單元格對象的Clear方法※ 103
※動態表示數據區域※ 104
※單元格對象的Copy方法※ 104
※單元格對象的選擇性粘貼PasteSpecial方法※ 104
第4節 數據的整理 105
疑難39 如何按條件隱藏數據行 106
※行和列的隱藏※ 107
※單元格對象的AutoFilter(自動篩選)方法※ 107
※單元格對象的AdvancedFilter(高級篩選)方法※ 109
疑難40 如何批量刪除空行 109
※單元格刪除Delete方法※ 110
※單元格刪除的通用算法※ 110
※利用Union獲取整個單元格區域進行統一操作※ 111
※Union方法的注意事項※ 111
※單元格插入Insert方法※ 112
疑難41 如何實現逐行輸入 112
※Protect方法和Unprotect方法※ 113
※單元格的Locked屬性※ 114
※允許VBA修改保護后的工作表※ 114
疑難42 如何用VBA創建下拉列表 115
※Validation對象※ 115
※Validation對象的Add方法※ 116
疑難43 如何使用VBA對數據按自定義序列進行排序 117
※單元格對象的Sort方法※ 118
※添加和刪除自定義序列CustomList ※ 119
※使用自定義序列排序※ 119
※Sort對象※ 120
※排序字段SortField※ 120
※按顏色排序※ 121
※設置排序區域SetRange方法※ 121
第5節 練習與思考 121
第3章 VBA常用函數和語句 122
第1節 數學函數 122
疑難44 如何用VBA進行四舍五入 122
※VBA的Round函數※ 123
※VBA的Round函數與工作表Round函數的區別※ 123
※在Office軟件中使用自定義函數替代VBA的Round函數※ 125
疑難45 如何隨機篩選指定個數的記錄 125
※隨機數Rnd函數※ 126
※不重復地挑選數據※ 127
※Rnd函數語法※ 127
※偽隨機數概念※ 127
※Randomize語句※ 127
疑難46 如何利用VBA轉換十六進制數字 127
※VBA的Hex函數※ 128
※利用工作表函數進行進制轉換※ 128
※以文本形式表示數字※ 129
※單元格的Prefix屬性與Excel的TransitionNavigKeys屬性※ 129
※其他進制數字在VBA中的表示方法※ 129
第2節 文本函數 129
疑難47 如何判斷某文本中是否包含指定字符 129
※Instr函數※ 130
※InstrRev函數※ 131
疑難48 如何批量替換文本中的指定字符 131
※Replace函數※ 132
※單元格對象的Replace方法※ 133
疑難49 如何根據身份證號碼判斷性別 133
※Left、Right和Mid函數※ 135
※Len函數※ 135
疑難50 如何替換文本中指定位置的字符 135
※MID語句※ 136
※使用MID語句的注意事項※ 136
※MID語句的優勢和局限性※ 137
第3節 日期和時間函數 137
疑難51 如何獲取和設置計算機中的當前日期 137
※Date函數和Date語句※ 138
※DateSerial函數※ 138
※Time函數和Time語句※ 139
※Time函數和Time語句※ 139
※Now函數※ 139
※VBA日期的實質※ 139
疑難52 如何計算合同到期日期 140
※DateAdd函數※ 140
疑難53 如何提取身份證號碼中的出生日期并計算年齡 141
※DateDiff函數※ 142
※DateDiff函數中interval參數“w”和“ww”的區別※ 143
※VBA的DateDiff函數和工作表函數DateDif的區別※ 143
疑難54 如何將日期轉換成英文格式 144
※Format函數※ 145
※特殊的英文格式日期※ 146
※使用DatePart函數獲取日期信息※ 146
第4節 其他常用函數和語句 147
疑難55 如何求得文本計算式的計算結果 147
※去除有規律但內容不定的文本※ 148
※String函數※ 148
※Evaluate方法計算表達式的值※ 149
※利用VBScript的Eval函數計算表達式的值※ 149
疑難56 如何獲取當前Windows登錄用戶名 149
※Environ函數※ 150
※獲取所有的系統環境變量※ 150
疑難57 如何為宏創建快捷鍵 150
※Application.OnKey方法※ 151
※Application.OnKey方法的注意事項※ 152
※Application.SendKeys方法※ 152
疑難58 如何定時運行程序 152
※Application.OnTime方法※ 153
※使用Application.OnTime重復執行程序※ 154
※取消Application.OnTime定時器的方法※ 154
疑難59 如何用VBA在工作表中創建文件清單 154
※Dir函數※ 155
※Dir函數查找路徑下所有的文件※ 156
※GetAttr函數獲取文件屬性※ 156
※SetAttr語句修改文件屬性※ 156
疑難60 如何用VBA將文件復制到另一個文件夾下并改名 156
※FileCopy語句※ 158
※Name…As語句※ 158
第5節 練習與思考 158
第4章 多表數據處理 159
第1節 跨工作表的數據處理 159
疑難61 如何按模板快速生成指定數量的工作表 159
※工作表對象(Worksheet)及其表示方法※ 161
※工作表集合和工作表※ 162
※工作表常用的基本屬性※ 162
※工作表的添加與復制※ 163
※工作表對象(Worksheet)與單元格對象(Range)的關系※ 163
※Application.DisplayAlerts屬性※ 164
※工作表的刪除※ 164
疑難62 如何進行跨表數據查詢 165
※跨表操作單元格※ 166
※連續查找功能※ 166
疑難63 如何進行跨表數據錄入 167
※ListObject對象※ 168
※ListObject對象的表示方法※ 169
※ListColumn對象※ 169
※向ListObject中添加新數據※ 170
※使用VBA添加ListObject對象※ 171
※Excel中數據存儲的結構※ 171
疑難64 如何按照關鍵字批量創建超鏈接 173
※Hyperlink對象※ 174
※創建超鏈接※ 175
※刪除超鏈接及訪問超鏈接※ 175
※創建超鏈接打開指定的宏代碼※ 175
第2節 跨工作簿的數據處理 175
疑難65 如何將多個工作表保存至單獨的工作簿中 176
※工作簿對象(Workbook)及其表示方法※ 177
※Application、Workbook、Worksheet和Range的關系※ 177
※工作簿(Workbook)對象的常用屬性※ 178
※工作簿的新建和保存※ 178
※獲取當前文件的目錄※ 180
※跨工作簿復制工作表※ 180
※使用Application.PathSeparator獲取系統路徑分隔符※ 180
※SaveAs和Save的區別※ 180
疑難66 如何讀取其他工作簿的數據 181
※打開關閉的工作簿※ 182
疑難67 如何導入多個工作簿中的工作表 183
※導入多個工作簿中的工作表※ 185
※Application.ScreenUpdating屬性※ 185
疑難68 如何將當前工作簿備份至指定目錄 185
※工作簿對象(Workbook)的SaveCopyAs方法※ 186
※SaveCopyAs方法和SaveAs方法的區別※ 186
第3節 工作表和工作簿的事件程序 186
疑難69 動態改變當前選中行的顏色 186
※事件的概念※ 187
※Worksheet的Selection_Change事件※ 188
※啟用Excel的事件※ 188
※工作表事件一覽※ 188
疑難70 如何實現雙擊標題行即對該列降序排序 189
※工作表雙擊事件(BeforeDoubleClick)※ 189
疑難71 如何完善數據有效性驗證 190
※工作表對象的Change事件※ 191
※判斷數據是否符合有效性設置※ 191
※利用VBA撤銷操作※ 191
※事件循環※ 192
※禁用事件※ 193
疑難72 如何動態隱藏工作表 193
※工作表(Worksheet)對象的Select方法※ 194
※工作表激活事件(Activate)和失去激活狀態事件(Deactivate)※ 196
※工作簿事件※ 197
※類模塊和Me變量※ 198
疑難73 如何實現必填數據為空則無法保存 199
※工作簿保存事件(BeforeSave)※ 200
疑難74 如何進行個性化的工作表保護 200
※工作簿的Workbook_SheetChange事件※ 201
疑難75 如何實現用戶登錄機制 201
※工作簿打開事件(Open)※ 203
※登錄的機制※ 204
※auto_open和auto_close※ 204
第4節 練習與思考 204
第5章 數據處理的綜合應用 205
第1節 計算及統計 205
疑難76 如何計算個人所得稅 205
※個人所得稅計算的步驟※ 207
※實現簡單計算的思考步驟※ 207
疑難77 如何進行銷售合計匯總 207
※使用循環結合工作表函數進行數據合計※ 208
※循環結構的建立※ 209
※循環結構的建立※ 209
※多層嵌套循環結構的建立※ 211
※循環的簡化※ 213
※以編程的方式思考問題※ 213
疑難78 如何將15位身份證號碼升為18位 213
※身份證號碼解讀※ 214
※利用字符串截取進行查詢※ 215
第2節 數據查詢與匯總 215
疑難79 如何羅列滿足條件的所有數據 215
※內嵌分支的循環結構※ 217
※羅列數據※ 217
※循環結構建立的誤區※ 217
疑難80 如何在多個工作表中查找指定的數據 217
※多表查詢※ 219
疑難81 如何獲取不重復的數據 219
※去除重復值(RemoveDuplicates)方法※ 220
※使用VBA去除重復值※ 222
※巧用Exit語句退出循環以加快速度※ 222
※循環中判斷條件的確立※ 222
※使用Find方法代替循環遍歷查找※ 223
疑難82 如何對比兩個表的數據 223
※兩表比較的步驟※ 225
疑難83 如何按單列匯總數據 225
※按單列匯總數據的步驟※ 227
※可互換的循環嵌套※ 227
※多個循環結構的合并※ 227
※學會簡單直接的思考方式※ 229
疑難84 如何按多列匯總數據 229
※按多列匯總數據的步驟※ 231
疑難85 如何制作多級下拉列表 231
※創建多級下拉列表的思考步驟※ 233
疑難86 如何獲取交叉查詢結果表 234
※交叉匯總表※ 236
※建立交叉匯總表的步驟※ 236
※建立交叉匯總表的優化※ 237
疑難87 如何按單列匯總多個工作表 237
※匯總多個工作表※ 239
※匯總數據表位置不同的多個工作表※ 239
疑難88 如何匯總列數不確定的多個工作表 239
※合并匯總(Consolidate)方法※ 240
※Array函數※ 241
※Evaluate方法構造數組※ 242
※使用VBA匯總多個列數不相等的工作表的步驟※ 244
疑難89 如何按指定列分拆工作表 244
※拆分工作表的步驟※ 246
※判斷工作表是否存在的步驟※ 246
※Is運算符比較對象變量※ 246
疑難90 如何制作動態匯總的數據查詢表 247
※動態匯總※ 249
※多列連接※ 250
疑難91 如何利用數據透視表匯總數據 250
※數據透視表緩存對象(PivotCache)※ 252
※訪問數據透視表緩存對象(PivotCache)※ 252
※數據透視表對象(PivotTable)※ 252
※創建數據透視表※ 253
※訪問數據透視表對象※ 253
※數據透視表的字段(PivotField)※ 253
※數據字段※ 254
疑難92 如何進行多工作簿匯總 254
※匯總多個工作簿※ 257
※使用GetObject函數獲取對象※ 257
第3節 數組處理 258
疑難93 如何建立數組加快程序運行 258
※數組的基本概念※ 259
※數組的聲明※ 260
※數組的賦值與數組數據的讀取※ 260
※Ubound和Lbound函數獲取數組的上下限※ 261
※For Each…Next循環遍歷數組的注意事項※ 261
※計算程序運行的時間※ 262
※數組處理的極限※ 262
疑難94 如何使用數組處理列數較多的數據 262
※建立列數下標的數組※ 265
※使用枚舉Enum※ 265
疑難95 如何利用數組實現分列 266
※Split函數※ 267
※將動態數組寫入單元格※ 268
※數組的維度與單元格行列的關系※ 269
※Option Base語句※ 269
※Join函數※ 269
疑難96 如何利用數組提取不重復值 270
※利用數組提取不重復值列表的步驟※ 271
※Redim Preserve語句※ 271
※使用工作表函數Transpose對數組進行轉置※ 272
※Filter函數※ 273
※使用Filter函數提取不重復值的步驟※ 274
※空數組的判斷※ 274
※Filter函數的精確篩選※ 274
※Filter函數在數據比對中的應用※ 275
疑難97 如何進行條件數量不確定的多條件數據查找 275
※使用數組進行多條件查找※ 277
第4節 練習與思考 278
第6章 數據的轉換 279
第1節 數據的導入與導出 279
疑難98 如何導入Access數據庫的數據 279
※利用ADO連接數據庫※ 281
※利用ADO執行SQL查詢并在Excel中輸出結果※ 281
※SQL語句※ 281
※ADO連接不同的數據庫※ 281
疑難99 如何利用VBA批量導入文本文件 283
※用Open語句和Close語句打開和關閉文件※ 285
※Input語句和Line Input語句讀取文本文件※ 285
※EOF函數※ 286
※Tranpose函數將嵌套的一維數組轉換為二維數組※ 286
疑難100 如何將xls格式工作簿批量轉換為xlsx格式 288
※使用HasVBProject屬性判斷工作簿是否有代碼※ 289
※禁止打開工作簿時執行程序※ 290
疑難101 如何將Excel按指定格式導出為文本文件 290
※Open語句創建文本文件※ 292
※使用Print語句向文件中寫入指定的內容※ 292
※Write語句※ 292
※Index函數取二維數組的子集※ 293
疑難102 如何利用VBA批量發送郵件 293
※CDO組件※ 295
※CDO.Message對象※ 295
※CDO.Message.Configuration對象※ 295
※前期綁定與后期綁定※ 296
※New關鍵字創建對象※ 297
※添加郵件的附件※ 298
第2節 圖形與圖表 298
疑難103 如何利用VBA批量插入圖片 298
※Shapes、Shape和ShapeRange※ 300
※Shapes對象插入圖形的方法※ 301
※Excel的坐標※ 302
※圖形大小的調整※ 302
※獲取圖片的原始大小※ 303
※將圖片按比例縮放至單元格※ 303
※圖片批量插入的步驟※ 304
※Pictures集合※ 304
疑難104 如何利用VBA生成圖表 305
※ChartObjects集合和ChartObject對象※ 306
※Chart對象※ 307
※數據系列(Series)對象※ 307
※添加圖表的其他方法※ 308
疑難105 如何將工作表數據批量導出為圖片 309
※Copy、Cut和Paste方法※ 310
※圖表對象(Chart)的Export方法※ 311
※利用PPT導出圖片※ 311
第3節 練習與思考 312
第7章 自定義過程和函數的開發 313
第1節 自定義過程和函數的開發實例 313
疑難106 如何編寫帶參數的過程 313
※使用含有參數的過程供多個過程調用※ 315
※含有參數的過程的聲明方法※ 316
※編寫含有參數的過程的方法※ 317
※使用Application.Run調用過程※ 317
疑難107 如何編寫處理數組排序的過程 317
※ByVal和ByRef的區別※ 318
※選擇排序※ 319
※數組排序的方法簡介※ 320
疑難108 如何編寫個人所得稅計算函數 320
※聲明自定義函數※ 321
※自定義函數的返回值※ 322
※自定義函數和過程的區別與聯系※ 322
疑難109 如何編寫獲取某列最后非空單元格行號的函數 322
※Volatile方法※ 323
※易失性函數※ 323
疑難110 如何編寫獲取最小值的自定義函數 323
※使用ParamArray關鍵字聲明數組參數※ 325
※IsMissing函數※ 325
※IsArray函數※ 326
※函數的嵌套與遞歸※ 326
疑難111 如何編寫條件查詢的函數 328
※使參數適用于數組和單元格區域※ 329
※TypeName函數和VarType函數※ 329
※查找指定位置的數據※ 331
※返回指定錯誤值的函數※ 331
疑難112 如何編寫函數按條件匯總關閉的工作簿中的數據 332
※自定義函數參數的跨表引用※ 333
※條件求和函數的累加原理※ 334
※使用Evaluate方法將引用轉換為數組※ 334
疑難113 如何使用自定義函數返回滿足條件的所有記錄 334
※以數組作為返回值的自定義函數※ 336
※Application.Caller屬性※ 336
疑難114 如何設置自定義函數的說明 337
※Application.MacroOptions方法※ 338
第2節 練習與思考 339
第8章 Excel對話框操作 340
第1節 Excel對話框操作實例 340
疑難115 如何創建信息提示對話框 340
※MsgBox函數※ 341
※MsgBox函數buttons參數的組合※ 342
※Application.Cursor屬性※ 342
※Application.SatusBar屬性※ 343
疑難116 如何制作具有交互功能的提示對話框 343
※MsgBox函數的返回值※ 344
疑難117 如何創建具備輸入功能的對話框 345
※VBA.InputBox函數※ 346
※InputBox函數的返回值※ 346
疑難118 如何反復提示對話框直到數據合法 346
※IsNumeric函數※ 347
※Application.InputBox方法※ 348
疑難119 如何創建對話框的幫助文檔 349
※CHM文件及HTML Help Workshop※ 354
※在Excel VBA中調用CHM文件※ 354
※創建VBA項目的幫助系統※ 355
※使用語句打開幫助文件※ 355
疑難120 如何顯示打開文件對話框 355
※Application.GetOpenFilename方法※ 356
※FileDialog對象※ 358
※FileDialog對象的常用屬性※ 358
※使用FileDialog對象的屬性Filters添加篩選※ 358
※FileDialog對象的Show方法和Execute方法※ 359
※遍歷通過FileDialog對象選擇的文件※ 359
※Application.GetSaveAsFilename方法※ 359
※Application.Dialog對象※ 359
第2節 練習與思考 359
第9章 控件和窗體的應用 360
第1節 控件的基礎 360
疑難121 如何在工作表中插入ActiveX控件 360
※ActiveX控件※ 360
※Excel中常用的ActiveX控件※ 361
※編輯ActiveX控件※ 361
※通過代碼訪問ActiveX控件※ 362
※工作表中窗體(表單)控件和ActiveX控件的區別※ 362
疑難122 如何更改ActiveX控件的屬性 362
※ActiveX控件的屬性※ 363
疑難123 如何創建ActiveX控件的事件程序 363
※ActiveX控件的事件※ 364
※ActiveX控件的常用事件※ 364
疑難124 如何使用日期選擇控件向單元格輸入日期 365
※DTPicker控件※ 366
※DTPicker控件的時間和日期的切換※ 367
※DTPicker控件的日期輸入方式※ 367
※DTPicker控件的Value屬性與Change事件※ 367
※使用DTPicker控件實現日期選擇并賦值給單元格※ 367
※注冊DTPicker控件※ 368
疑難125 如何創建可以動態模糊查詢的下拉列表 369
※TextBox控件和ListBox控件※ 371
※ListBox控件的ListFillRange屬性和List屬性※ 371
※ListBox控件的多列顯示※ 372
※ListBox控件的值※ 372
※模糊查詢下拉列表※ 373
※控件的選用※ 373
※ListBox和ComboBox控件※ 373
疑難126 如何批量設置控件屬性 374
※CallByName函數※ 376
※CallByName函數獲取子對象※ 376
※CallByName批量修改對象的屬性※ 376
※靈活使用自定義過程※ 376
第2節 窗體和控件的深入應用 377
疑難127 如何創建并顯示窗體 377
※窗體對象及其屬性※ 378
※窗體對象的顯示與關閉※ 378
※窗體對象的裝載與顯示※ 378
※窗體對象的卸載與隱藏※ 379
※窗體的顯示模式※ 379
疑難128 如何在窗體中插入控件 379
※控件工具欄※ 381
※控件的順序※ 381
※控件的組合※ 382
疑難129 如何利用窗體向工作表中錄入數據 383
※窗體控件與工作表的交互※ 384
※窗體的事件※ 385
※窗體中Controls集合訪問控件※ 386
※控件的排列※ 386
※使用控件數組進行賦值※ 386
疑難130 如何利用窗體創建實時篩選浮動工具欄 387
※Default和Cancel按鈕※ 390
※提高單元格隱藏的速度※ 390
※自制浮動工具欄※ 390
※動態顯示與隱藏窗體※ 391
疑難131 如何移動不同列表框中的項目 391
※ListBox的AddItem方法和RemoveItem方法※ 395
※ListBox控件的MultiSelect屬性※ 395
※ListBox控件的Value屬性※ 396
※ListBox控件的ListIndex屬性※ 396
※VBA實現ListBox項目的移動※ 396
疑難132 如何利用復合框制作工作簿/表導航 397
※復合框(ComboBox)控件※ 398
※利用復合框制作二級下拉列表※ 399
疑難133 如何利用窗體制作向導系統 399
※多頁(MultiPage)控件※ 401
※多頁控件的頁面※ 401
※使用代碼更改當前顯示的頁面※ 402
※Application. SheetsInNewWorkbook屬性※ 402
疑難134 如何創建具有窗體交互的函數 403
※創建具有窗體交互的函數的步驟※ 405
※ListBox控件的Selected屬性※ 406
疑難135 如何利用窗體制作登錄界面 406
※使用窗體作為操作界面※ 408
※隱藏Excel工作簿※ 409
疑難136 如何動態地創建控件以顯示查詢結果 409
※使用代碼為窗體添加控件※ 412
※通過名稱控件排列※ 412
※使用類模塊為按鈕批量添加事件※ 413
疑難137 如何動態創建窗體 414
※VBComponents集合※ 417
※VBComponent對象※ 417
第3節 練習與思考 418
第10章 自定義功能區 419
第1節 自定義功能區實例 419
疑難138 如何添加選項卡和內置控件 419
※功能簡介※ 421
※使用Excel選項自定義功能區※ 421
疑難139 如何創建工作簿級的自定義選項卡 421
※Excel工作簿的實質※ 424
※XML簡介※ 424
※customUI.xml※ 426
※常用的功能區控件及通用屬性※ 426
※tabs控件和tab控件※ 427
※group控件※ 427
※命令控件※ 427
※內置控件的ID※ 428
※customUI.xml中控件和屬性的命名規則※ 428
※使用customUIEditor工具制作選項卡※ 428
疑難140 如何在功能區添加按鈕并運行VBA程序 430
※回調(CallBack)※ 432
※IRibbonControl對象※ 432
疑難141 如何動態更改功能區控件屬性 432
※動態屬性※ 436
※IRibbonUI對象和Invalidate方法※ 436
※設置IRibbonUI對象※ 437
※Invalidate的實質※ 437
疑難142 如何添加自定義功能區列表控件的選項 437
※dropDown控件添加選項※ 440
※dropDown控件的onAction屬性※ 441
※獲取dropDown控件選中選項的另一個方法※ 441
疑難143 如何實現功能區控件之間的交互 442
※切換按鈕(toggleButton)控件的getPressed屬性※ 445
※切換按鈕(toggleButton)控件的onAction屬性※ 445
※切換按鈕之間的交互※ 445
※條件篩選的自定義過程※ 446
第2節 練習與思考 446
第11章 程序的錯誤調試 447
疑難144 如何利用出錯信息判斷工作表是否存在 447
※On Error 語句※ 448
※Err對象※ 449
※運行時錯誤的利用※ 449
※代碼標簽※ 449
疑難145 如何在中斷模式下調試程序 450
※中斷模式※ 451
※程序的測試※ 451
疑難146 如何逐步調試程序 451
※逐語句運行※ 452
疑難147 如何為程序設置斷點調試程序 452
※斷點※ 453
疑難148 如何運用監視窗口監控變量的值 453
※監視窗口※ 454
※使用“立即窗口”※ 455
疑難149 如何自定義錯誤 455
※Err對象的Raise方法※ 456
疑難150 如何進行程序出錯的自動處理 457
※處理錯誤的兩種方式※ 458
※Resume語句※ 459
第12章 綜合開發實戰 460
疑難151 如何制作通用工具 460
※通用工具的主程序設計※ 466
※使用加載宏制作通用工具※ 466
※加載宏工具的安裝※ 466
疑難152 如何建立調查及數據收集系統 467
※復雜的多功能程序的設計※ 473
疑難153 如何建立簡易的收發管理系統 473
※設計微型數據管理系統※ 494
※使用同一個窗體操作不同的數據表※ 494
※類模塊中定義過程和函數※ 494
序: