Excel 2010 VBA編程與實(shí)踐這本書(shū)包含11章,涉及制表的每個(gè)方面。包含249個(gè)疑難案例,每個(gè)疑難都包含一個(gè)或多個(gè)解決方案,并融入一個(gè)或多個(gè)知識(shí)點(diǎn)講解,貼切實(shí)際,深入淺出。
Excel 2010 VBA編程與實(shí)踐目錄
第1章 基礎(chǔ)理論 1
1.1 快速獲取幫助 1
疑難1 如何獲取所有控件的屬性及屬性值 1
前期綁定與后期綁定 4
疑難2 部分對(duì)象在輸入時(shí)沒(méi)有成員列表提示,如何解決 5
沒(méi)有成員列表的對(duì)象 6
疑難3 如何找出錯(cuò)誤語(yǔ)句及獲取錯(cuò)誤原因并發(fā)送到開(kāi)發(fā)者郵箱 6
利用ShellExecute函數(shù)調(diào)用程序的方式 8
1.2 程序防錯(cuò)要點(diǎn) 8
疑難4 程序出錯(cuò)有哪些原因 9
常見(jiàn)錯(cuò)誤分析 9
疑難5 如何獲取VBA所有運(yùn)行時(shí)錯(cuò)誤的詳細(xì)說(shuō)明 10
通過(guò)Error函數(shù)獲取錯(cuò)誤信息 12
疑難6 如何在執(zhí)行完畢后報(bào)告出錯(cuò)次數(shù)及原因 13
捕捉所有錯(cuò)誤信息 14
疑難7 如何開(kāi)發(fā)完善的程序 15
數(shù)組區(qū)域?qū)BA程序的影響 17
疑難8 防錯(cuò)語(yǔ)句在程序或者函數(shù)中應(yīng)用有哪些優(yōu)勢(shì) 17
利用Err.Number屬性判斷錯(cuò)誤類(lèi)型 19
1.3 代碼優(yōu)化之道 19
疑難9 如何優(yōu)化過(guò)程“隱藏偶數(shù)行” 19
關(guān)閉ScreenUpdating提升程序效率 20
疑難10 如何優(yōu)化過(guò)程“設(shè)置字體屬性” 21
利用With簡(jiǎn)化對(duì)象引用 22
疑難11 如何優(yōu)化過(guò)程“隔三行求和” 22
減少單元格的寫(xiě)入次數(shù)提升程序效率 23
疑難12 如何優(yōu)化過(guò)程“B列所有圖片右移” 23
有針對(duì)性地使用Select方法 24
疑難13 如何優(yōu)化過(guò)程“建工作表目錄” 25
VBA中數(shù)組的作用 26
疑難14 如何優(yōu)化過(guò)程“成績(jī)?cè)u(píng)語(yǔ)” 26
區(qū)分適合置于循環(huán)體中的語(yǔ)句 27
疑難15 如何優(yōu)化過(guò)程“刪除空單元格所在行” 27
不用循環(huán)而選擇多個(gè)符合條件的單元格 28
疑難16 如何優(yōu)化過(guò)程“批量修改批注背景色” 28
區(qū)分父對(duì)象與子對(duì)象 29
疑難17 如何優(yōu)化過(guò)程“隔一行插入一行” 30
計(jì)算模式對(duì)程序效率的影響 31
疑難18 如何優(yōu)化過(guò)程“獲取外網(wǎng)IP地址” 31
使用變量的條件 32
1.4 提升代碼的兼容性 32
疑難19 程序的兼容性體現(xiàn)在哪些方面 33
操作系統(tǒng)對(duì)VBA的影響 33
疑難20 如何讓程序適應(yīng)不確定對(duì)象 34
使用動(dòng)態(tài)區(qū)域引用讓代碼具有更強(qiáng)的通用性 37
疑難21 如何讓程序兼容Excel多版本 37
識(shí)別Excel的版本號(hào) 39
疑難22 如何讓程序兼容英文和中文系統(tǒng) 40
利用API函數(shù)識(shí)別簡(jiǎn)體、繁體中文與英文 41
疑難23 如何讓程序兼容簡(jiǎn)體與繁體中文 41
讓代碼適應(yīng)簡(jiǎn)體與繁體系統(tǒng) 42
1.5 練習(xí)與思考 42
第2章 查找引用 44
2.1 本表查找 44
疑難24 如何查找不及格學(xué)生姓名并突出顯示 44
利用Union方法合并多區(qū)域 46
疑難25 如何一次性羅列表中三省員工的姓名 47
Find方法的使用技巧 49
疑難26 如何在輸入時(shí)逐步查找 50
通過(guò)KeyUp事件自動(dòng)執(zhí)行查詢(xún) 52
疑難27 如何按指定的格式查找 53
FindFormat的使用技巧 54
疑難28 如何實(shí)現(xiàn)字體格式替換 54
替換格式的條件 55
疑難29 如何查找所有“#”并標(biāo)為上標(biāo) 56
區(qū)分上標(biāo)、下標(biāo)的應(yīng)用對(duì)象 57
疑難30 如何找出還款時(shí)間超過(guò)一年及未還款的客戶(hù)信息 57
日期函數(shù)Datedif的特性 59
疑難31 可以將查找到的所有數(shù)據(jù)串連并寫(xiě)入剪貼板中嗎 59
引用“Microsoft Forms 2.0 Object Library”的兩種方法 60
疑難32 可以創(chuàng)建一個(gè)工具欄來(lái)方便查找嗎 61
設(shè)置lookat參數(shù)實(shí)現(xiàn)模糊查找 63
疑難33 如何快速羅列出每個(gè)產(chǎn)品最新報(bào)價(jià) 63
Collection對(duì)象的應(yīng)用技巧 65
疑難34 如何在具有合并單元格的區(qū)域中多條件逐步查找 65
通過(guò)“MergeArea”屬性返回合并區(qū)域 67
疑難35 如何查找成績(jī)并分批發(fā)郵件 67
VBA中發(fā)編寫(xiě)郵件正文時(shí)的換行符的表示法 68
2.2 跨表及多表查找 69
疑難36 如何引用數(shù)據(jù)表創(chuàng)建多級(jí)下拉菜單 69
“ActionControl”對(duì)象的功能與限制 72
疑難37 如何將所有表中查找的完成數(shù)匯總到總表 73
利用SpecialCells定位實(shí)現(xiàn)快速查找 74
疑難38 在窗體中羅列每月產(chǎn)量冠軍名單 74
不采用循環(huán),一次性找出最大值所在行 76
疑難39 如何將具有外部數(shù)據(jù)引用的單元格轉(zhuǎn)換成值 76
通過(guò)“[]”和“’!”定位具有外部鏈接的公式 77
疑難40 如何讓鏈接到其他表中隱藏單元格的超鏈接生效 77
通過(guò)xlSheetVisible屬性切換工作表顯示狀態(tài) 78
疑難41 如何實(shí)現(xiàn)多部門(mén)電話(huà)資料模糊查詢(xún) 79
Target與Activecell的區(qū)別 80
疑難42 如何實(shí)現(xiàn)所有未收貨款者在狀態(tài)欄隨機(jī)顯示 80
利用OnTime定時(shí)執(zhí)行程序 82
2.3 文件查找與轉(zhuǎn)換 82
疑難43 如何判斷指定文件是否存在 82
利用DIR函數(shù)判斷文件是否存在 83
疑難44 如何進(jìn)行深度查找且創(chuàng)建文件目錄 84
FileDialog對(duì)象的應(yīng)用 85
疑難45 如何查找并備份所有“3月生產(chǎn)表” 86
CopyFile方法對(duì)文件復(fù)制 88
疑難46 如何將所有Excel文件轉(zhuǎn)換成XPS或PDF文件 88
利用PrintOut方法將工作表轉(zhuǎn)換成XPS文件 90
疑難47 如何在網(wǎng)上鄰居的共享盤(pán)中查找并打開(kāi)“單價(jià)表” 91
利用FileExists方法判斷文件是否存在 92
疑難48 如何實(shí)現(xiàn)全盤(pán)查找“上海灘.MP3”,有則自動(dòng)翻放 92
播放音樂(lè)的三種方式 94
疑難49 如何在網(wǎng)上自動(dòng)搜索與當(dāng)前單元格同名的歌曲并播放 95
利用網(wǎng)頁(yè)地址索引歌曲并自動(dòng)播放 96
2.4 圖片查找與引用 96
疑難50 如何瞬間刪除當(dāng)前表中所有圖片 96
DrawingObjects與Shape對(duì)象的區(qū)別 97
疑難51 可以將簽名圖片復(fù)制到表中所有簽名處嗎 97
復(fù)制圖形對(duì)象與復(fù)制數(shù)據(jù)的區(qū)別 98
Selection代表什么 99
疑難52 如何像vlookup引用數(shù)據(jù)一樣引用圖片 99
對(duì)圖片設(shè)置公式引用其他圖片 101
疑難53 如何通過(guò)窗體預(yù)覽指定目錄中的所有圖片 101
通過(guò)LoadPicture函數(shù)加載圖片 103
2.5 練習(xí)與思考 103
第3章 數(shù)據(jù)處理 104
3.1 定位的技巧 104
疑難54 如何選擇當(dāng)前表0~100之外的數(shù)據(jù) 104
使用定位技術(shù)減少循環(huán)語(yǔ)句的循環(huán)次數(shù) 105
疑難55 如何定位奇數(shù)行 105
MOD配合SpecialCells定位奇數(shù)行 106
疑難56 可以瞬間定位并隱藏所有錯(cuò)誤值嗎 107
通過(guò)SpecialCells定位錯(cuò)誤值 108
疑難57 如何在輸入數(shù)據(jù)時(shí)自動(dòng)定位下一行的目標(biāo)單元格 109
限制刪除單元格的數(shù)據(jù)時(shí)不觸發(fā)工作表的Change事件 110
疑難58 可以將標(biāo)題以外的區(qū)域轉(zhuǎn)換成“萬(wàn)”為單位嗎 110
VBA中如何處理雙引號(hào) 111
疑難59 如何定位當(dāng)前表最大值和最小值 112
調(diào)用工作表函數(shù)并配合Find方法查找最大值 113
疑難60 能定位并標(biāo)識(shí)高于平均值的單元格嗎 113
VBA中數(shù)字、漢字的大小關(guān)系 115
疑難61 如何反向選擇工作表區(qū)域 115
輔助區(qū)的重要性 116
3.2 數(shù)據(jù)處理及格式轉(zhuǎn)換 116
疑難62 如何將單詞在大寫(xiě)、小寫(xiě)與首字母大寫(xiě)間任意切換 116
利用StrConv函數(shù)對(duì)英文進(jìn)行大寫(xiě)、小寫(xiě)和首字母大寫(xiě)轉(zhuǎn)換 117
疑難63 如何將二維的入庫(kù)表轉(zhuǎn)換成一維排版方式 118
利用數(shù)組提升代碼執(zhí)行效率 119
疑難64 能否不用循環(huán)對(duì)選區(qū)進(jìn)行橫向與縱向匯總 120
“R1C1”引用方式的優(yōu)點(diǎn) 121
疑難65 如何批量地將字符串中的字母、數(shù)字和漢字分離出來(lái) 122
利用Like運(yùn)算符區(qū)別漢字、數(shù)字和字母 123
疑難66 可以將表達(dá)式轉(zhuǎn)換成運(yùn)算結(jié)果嗎 124
通過(guò)Evaluate計(jì)算表達(dá)式 125
疑難67 如何快速填充所有空單元格 125
利用Intersect引用區(qū)域提升代碼通用性 126
疑難68 如何將產(chǎn)品銷(xiāo)售地區(qū)瞬間轉(zhuǎn)換成下拉列表 126
利用代碼設(shè)置有效性序列 127
疑難69 數(shù)據(jù)有效性可以設(shè)置三級(jí)關(guān)聯(lián)下拉列表嗎 128
利用Dictionary對(duì)象獲取唯一值 130
疑難70 可以對(duì)職員信息表按學(xué)歷排序嗎 130
新舊版本中Sort的差異 131
疑難71 可以不打開(kāi)工作簿而提取其數(shù)據(jù)嗎 132
VBA中調(diào)用公式實(shí)現(xiàn)從未打開(kāi)的工作表中取值 133
疑難72 如何保護(hù)所有公式不能修改 134
切換Locked 屬性實(shí)現(xiàn)公式保護(hù) 135
疑難73 如何實(shí)現(xiàn)金額數(shù)據(jù)分解 135
MID取文本的特點(diǎn) 137
疑難74 VBA可以破解工作表密碼嗎 137
表的分類(lèi) 138
疑難75 如何對(duì)分段編號(hào)進(jìn)行合并轉(zhuǎn)換 138
減少數(shù)組變量空間分配次數(shù)的方法 140
疑難76 如何將5個(gè)大小相同選區(qū)的數(shù)據(jù)互換 141
Areas與CurrentRegion的區(qū)別 142
疑難77 如何取得1000之內(nèi)的質(zhì)數(shù) 142
質(zhì)數(shù)的特性 143
疑難78 可以生成指定范圍的不重復(fù)隨機(jī)數(shù)嗎 144
Collection對(duì)象的優(yōu)勢(shì) 145
疑難79 如何利用VBA對(duì)工作簿進(jìn)行減肥 145
正確刪除單元格,減少文件體積 146
疑難80 如何讓數(shù)字在文本與數(shù)值之間快速切換 147
在文本與數(shù)值間切換的VBA思路 148
疑難81 如何將“/”分隔的數(shù)據(jù)進(jìn)行匯總 149
以“/”為分隔符取其左右字符的思路優(yōu)化 150
疑難82 可以對(duì)指定區(qū)域進(jìn)行自動(dòng)更正嗎 150
利用Replace方法實(shí)現(xiàn)限定區(qū)域的自動(dòng)更正 151
疑難83 可以對(duì)包括“星期”的所有工作表同時(shí)添加公式嗎 151
VBA在單表和多表中輸入公式的區(qū)別 152
疑難84 在VBA中如何控制字符朗讀 153
利用Speech朗讀字符 153
疑難85 能實(shí)現(xiàn)粘貼數(shù)據(jù)時(shí)跳過(guò)隱藏區(qū)嗎 154
如何確定單元格是否隱藏 156
疑難86 如何對(duì)相同值進(jìn)行標(biāo)識(shí)著色 156
疑難87 如何根據(jù)工資計(jì)算零鈔數(shù)量 159
獲取選區(qū)第一列及已用區(qū)域的交集 160
疑難88 如何批量實(shí)現(xiàn)區(qū)域數(shù)據(jù)真正四舍五入 161
通過(guò)round解決數(shù)據(jù)顯示的假象 162
疑難89 如何優(yōu)化具有大量公式引用的數(shù)據(jù)計(jì)算 163
公式與VBA在計(jì)算上的區(qū)別 164
ClearContents與Clear的區(qū)別 164
3.3 單元格合并技巧 164
疑難90 可以在表格中合并同類(lèi)項(xiàng)嗎 165
利用DisplayAlerts屬性關(guān)閉合并單元格的提示及加快執(zhí)行速度 166
疑難91 如何實(shí)現(xiàn)按產(chǎn)品合并產(chǎn)量數(shù)據(jù)表 166
利用變量暫存數(shù)據(jù),代替輔助區(qū) 168
疑難92 如何實(shí)現(xiàn)合并時(shí)保留所有數(shù)據(jù),而拆分時(shí)可以還原 168
看不見(jiàn)的特殊字符的應(yīng)用 171
疑難93 可以選擇當(dāng)前表所有合并單元格嗎 171
定位合并單元格 172
疑難94 如何取消所有合并區(qū)域并且對(duì)所有單元格填充數(shù)據(jù) 172
合并區(qū)域的賦值方式 174
疑難95 合并單元格后仍然可以正常引用區(qū)域中的所有值嗎 174
復(fù)制合并屬性 175
疑難96 如何將指定單元格合并鏈接到一個(gè)選區(qū) 175
對(duì)一個(gè)區(qū)域追加鏈接 177
疑難97 跨頁(yè)合并單元格可以重新合并從而適應(yīng)分頁(yè)打印嗎 178
判斷合并單元格是否跨頁(yè) 179
疑難98 可以讓合并單元格自動(dòng)換行嗎 180
工作表事件代碼與普通過(guò)程的區(qū)別 181
3.4 報(bào)表合并與拆分 181
疑難99 如何合并所有工作表到一個(gè)表中 182
讓復(fù)制數(shù)據(jù)時(shí)既去除公式又不影響數(shù)值的顯示狀態(tài) 183
疑難100 如何實(shí)現(xiàn)多表合并匯總 184
利用相對(duì)引用公式批量合并數(shù)據(jù),避免使用循環(huán) 185
疑難101 如何將多個(gè)工作簿中的所有工作表合并到一個(gè)工作表中 186
通過(guò)禁用工作簿重算提升代碼效率 189
疑難102 如何將多個(gè)工作簿數(shù)據(jù)合并到一個(gè)工作簿中 189
利用變量作為輔助進(jìn)行條件判斷 193
疑難103 如何實(shí)現(xiàn)報(bào)表拆分 193
利用復(fù)制格式和復(fù)制數(shù)值實(shí)現(xiàn)完美復(fù)制,避免復(fù)制后顯示錯(cuò)誤 195
疑難104 如何將工作簿中每個(gè)工作表轉(zhuǎn)換為獨(dú)立工作表 197
根據(jù)版本號(hào)決定文件格式 198
3.5 單元格顏色的綜合應(yīng)用 199
疑難105 Excel不同版本在顏色處理方面有分別嗎 199
不同版本中顏色差異對(duì)程序的影響 200
疑難106 可以對(duì)Excel 2010的按顏色篩選再做擴(kuò)展嗎 201
CurrentRegion與Usedrange對(duì)程序的影響 204
疑難107 如何讓按顏色排序可以在Excel 多版本間通用 204
借用輔助和調(diào)用老版本的Sort功能提升程序的通用性 206
疑難108 如何將顏色分類(lèi)重排且通用于Excel多個(gè)版本 206
將顏色屬性轉(zhuǎn)換成數(shù)據(jù),輔助程序執(zhí)行 208
疑難109 可以按顏色對(duì)選區(qū)數(shù)據(jù)分類(lèi)匯總嗎 208
修改數(shù)據(jù)源與修改顏色在VBA事件中的差異 211
疑難110 如何用函數(shù)對(duì)數(shù)據(jù)背景和字體按顏色匯總 212
通過(guò)Volatile讓函數(shù)聲明為易失性函數(shù) 213
3.6 重復(fù)數(shù)據(jù)處理 213
疑難111 如何清空重復(fù)值單元格并標(biāo)識(shí) 214
Countif函數(shù)在去重復(fù)值中的應(yīng)用 215
Countif函數(shù)的限制 216
疑難112 可以對(duì)重復(fù)出現(xiàn)的數(shù)據(jù)進(jìn)行圈釋嗎 216
利用CircleInvalid對(duì)單元格加圈,以及CircleInvalid的限制 217
疑難113 如何篩選唯一值 218
使用錯(cuò)誤處理語(yǔ)句配合Collection取唯一值 219
疑難114 可以在輸入重復(fù)值時(shí)提示用戶(hù)嗎 219
通過(guò)EnableEvents提高程序的執(zhí)行效率 220
疑難115 如何對(duì)兩列數(shù)據(jù)提取相同項(xiàng)與不同項(xiàng) 221
利用Transpose函數(shù)實(shí)現(xiàn)區(qū)域轉(zhuǎn)數(shù)組 222
疑難116 如何將多行多列相同者保留最后一個(gè)數(shù)據(jù) 223
雙層Transpose配套Join實(shí)現(xiàn)橫向區(qū)域轉(zhuǎn)字符串 224
3.7 數(shù)據(jù)透視 224
疑難117 如何按職務(wù)或部門(mén)進(jìn)行工資數(shù)據(jù)的透視分析 225
利用Excel 2003的透視表代碼提升程序兼容性 226
疑難118 如何實(shí)現(xiàn)多重?cái)?shù)據(jù)透視 227
利用Array嵌套創(chuàng)建多重透視 228
疑難119 如何實(shí)現(xiàn)同時(shí)透視多工作簿中的多工作表數(shù)據(jù) 229
解決VBA創(chuàng)建透視表名稱(chēng)沖突的兩種方法 230
3.8 練習(xí)與思考 231
第4章 報(bào)表打印 232
4.1 打印設(shè)置 232
疑難120 如何一次性設(shè)置“總表”以外工作表的頁(yè)腳 232
選擇工作表數(shù)量對(duì)頁(yè)腳的影響 233
疑難121 如何設(shè)置所有工作表的已用區(qū)域?yàn)榇蛴^(qū)域 233
設(shè)置打印區(qū)域?qū)?shù)據(jù)打印的影響 234
疑難122 可以記錄工作簿的打印次數(shù)嗎 235
借用文件自定義屬性記錄打印次數(shù) 235
4.2 特殊打印格式設(shè)計(jì) 236
疑難123 如何設(shè)計(jì)工資條打印格式 237
借用輔助列提升程序的容錯(cuò)性 240
疑難124 如何打印工資卡 240
引用普通工作簿和加載宏工作簿的區(qū)別 243
疑難125 VBA可以實(shí)現(xiàn)對(duì)工作表分頁(yè)小計(jì)嗎 243
利用宏表函數(shù)Get.Document(50)獲取工作表頁(yè)數(shù) 246
疑難126 如何同時(shí)打印頂端標(biāo)題和底端標(biāo)題行 246
計(jì)算第一個(gè)分頁(yè)符的所在行號(hào) 253
疑難127 可以借用圖片實(shí)現(xiàn)底端標(biāo)題打印嗎 253
Export與API方式將區(qū)域轉(zhuǎn)換成圖片的差異 255
疑難128 如何制作針式多聯(lián)打印機(jī)打印格式的報(bào)表 256
利用HPageBreaks.Add實(shí)現(xiàn)手動(dòng)分頁(yè) 258
疑難129 如何實(shí)現(xiàn)雙面打印 259
中斷與禁止中斷程序 260
疑難130 可以?xún)H僅打印活動(dòng)單元格所在頁(yè)嗎 260
利用Location計(jì)算分頁(yè)符位置,配合循環(huán)判斷當(dāng)前頁(yè)序號(hào) 261
4.3 練習(xí)與思考 262
第5章 函數(shù)開(kāi)發(fā) 263
5.1 自定義函數(shù)基礎(chǔ) 263
疑難131 如何開(kāi)發(fā)自定義函數(shù) 263
Office版本對(duì)自定義函數(shù)參數(shù)的影響 267
疑難132 函數(shù)與參數(shù)名規(guī)則如何 267
自定義函數(shù)命名規(guī)則 267
疑難133 自定義函數(shù)在不同版本中有何差異 269
顏色對(duì)自定義函數(shù)的影響 271
5.2 開(kāi)發(fā)自定義函數(shù) 271
疑難134 如何對(duì)區(qū)域內(nèi)混雜字符串中的數(shù)字求和 271
Excel公式對(duì)連續(xù)“+”的處理方式 273
疑難135 如何分離字符串中的數(shù)值、英文和漢字 273
正則表達(dá)式在字符處理中的優(yōu)勢(shì) 274
疑難136 如何將文本混雜字符串及表達(dá)式轉(zhuǎn)換為值 274
正則表達(dá)式中數(shù)字、漢字的表達(dá)方式 276
疑難137 如何按時(shí)間段計(jì)算匯總金額 277
根據(jù)計(jì)算對(duì)象的規(guī)范性決定函數(shù)參數(shù)的個(gè)數(shù) 278
疑難138 如何對(duì)具有分隔符的數(shù)據(jù)分類(lèi)匯總 279
Split函數(shù)產(chǎn)生的數(shù)組的特點(diǎn) 280
疑難139 可以取姓名的漢語(yǔ)拼音首字母嗎 280
漢字與拼音首字母的對(duì)應(yīng)關(guān)系 282
疑難140 超過(guò)15位的數(shù)字如何求和 282
Excel對(duì)數(shù)據(jù)計(jì)算的長(zhǎng)度限制 284
疑難141 可以擴(kuò)展Vlookup函數(shù)實(shí)現(xiàn)返回多個(gè)結(jié)果嗎 284
利用Find替代Vlookup實(shí)現(xiàn)多個(gè)數(shù)據(jù)查找 285
疑難142 如何利用函數(shù)創(chuàng)建文件目錄 286
自定義函數(shù)中如何表示活動(dòng)單元格 287
疑難143 可以用函數(shù)連接內(nèi)存數(shù)據(jù)和區(qū)域中所有文本嗎 288
利用ParamArray聲明不確定個(gè)數(shù)的函數(shù)參數(shù) 290
疑難144 如何根據(jù)身份證號(hào)碼獲取出生日期、年齡和性別 290
身份證號(hào)碼所包含的個(gè)人信息 292
疑難145 如何將多個(gè)單元格中的人民幣數(shù)字合并且轉(zhuǎn)為大寫(xiě)金額 293
聲明正確的類(lèi)型優(yōu)化函數(shù)效率 294
疑難146 如何計(jì)算兩個(gè)區(qū)域的不同項(xiàng) 294
自定義函數(shù)對(duì)大區(qū)域運(yùn)算的限制 296
疑難147 如何突破Rank函數(shù)排名的限制 296
去重復(fù)值的3個(gè)方法 297
疑難148 如何實(shí)現(xiàn)按數(shù)據(jù)出現(xiàn)次數(shù)排序 298
Collection與字典的區(qū)別 300
疑難149 可以用一個(gè)函數(shù)將人民幣大小寫(xiě)相互轉(zhuǎn)換嗎 300
通過(guò)拆分法理解代碼 302
疑難150 可以用函數(shù)改變引用區(qū)域的值嗎 303
利用自定義函數(shù)修改引用區(qū)域的值的兩種方法 305
疑難151 如何對(duì)兩個(gè)以逗號(hào)分隔的亂序字符串比較異同 306
Split函數(shù)嵌套應(yīng)用從字符串中分別獲取品名與數(shù)量 307
疑難152 可以利用函數(shù)添加數(shù)據(jù)監(jiān)控嗎 308
借用函數(shù)的易失性實(shí)現(xiàn)自動(dòng)執(zhí)行,類(lèi)似于工作表事件 309
疑難153 可以讓函數(shù)的兩個(gè)參數(shù)全是可選參數(shù)嗎 310
將單個(gè)參數(shù)聲明為可選參數(shù)的方法 311
疑難154 可以利用函數(shù)批量對(duì)工作表命名嗎 312
借用類(lèi)模塊將工作簿級(jí)事件提升為應(yīng)用程序級(jí)事件 314
疑難155 如何讓自定義函數(shù)運(yùn)算結(jié)果是一個(gè)數(shù)組 314
函數(shù)返回?cái)?shù)組的條件 316
5.3 自定義函數(shù)的管理 316
疑難156 如何對(duì)自定義函數(shù)添加說(shuō)明 316
通過(guò)MacroOptions定義函數(shù)的幫助信息 318
疑難157 如何對(duì)自定義函數(shù)的參數(shù)添加幫助 318
借用REGISTER為自定義函數(shù)添加參數(shù)說(shuō)明及分類(lèi) 321
疑難158 可以將加載宏中的自定義函數(shù)復(fù)制到活動(dòng)工作簿嗎 322
判斷用戶(hù)的設(shè)置是否允許訪(fǎng)問(wèn)VBA工程 325
疑難159 如何封裝自定義函數(shù),使其代碼不可查看 325
利用VB 6.0企業(yè)版封裝自定義函數(shù) 328
5.4 練習(xí)與思考 328
第6章 文件目錄 329
6.1 文件管理 329
疑難160 可以實(shí)現(xiàn)文件雙向備份嗎 329
利用SaveCopyAs備份文件 330
疑難161 如何讓文件使用一次后即自我銷(xiāo)毀 331
文件“自殺”的條件 331
疑難162 文件有哪些屬性,如何控制它們 332
GetAttr函數(shù)搭配and運(yùn)算符判斷文件是否具備某屬性 333
疑難163 如何刪除指定目錄中一年前創(chuàng)建的文件 334
疑難164 可以刪除18個(gè)月沒(méi)有使用的文件嗎 335
用DATEDIF計(jì)算文件閑置時(shí)間的技巧 336
疑難165 如何對(duì)文件批量重命名 336
獲取文件名的方法 338
疑難166 可以在收藏夾中對(duì)當(dāng)前工作簿創(chuàng)建快捷方式嗎 338
獲取收藏夾地址的方法 339
疑難167 文本文件與Excel如何批量轉(zhuǎn)換 341
文本文件與工作表的相互轉(zhuǎn)換 342
疑難168 如何實(shí)現(xiàn)將指定文件作為附件發(fā)送郵件 343
Outlook的前期綁定與后期綁定 344
6.2 目錄管理 345
疑難169 如何瞬間刪除D盤(pán)中所有空文件夾 345
將代表磁盤(pán)的字符串轉(zhuǎn)換成磁盤(pán)對(duì)象的方法 346
疑難170 如何獲取C盤(pán)以外所有磁盤(pán)的文件目錄列表 346
通過(guò)FSO對(duì)象判斷某磁盤(pán)是否存在 347
疑難171 如何讓多版本Excel可以隨心所欲選擇打開(kāi)方式 348
將Excel快捷方式導(dǎo)入“Sendto”文件夾 349
疑難172 如何批量創(chuàng)建以本月每日日期命名的文件夾 350
利用DateSerial的糾錯(cuò)功能計(jì)算本月天數(shù) 351
6.3 練習(xí)與思考 351
第7章 圖表設(shè)計(jì) 352
7.1 圖表編輯 352
疑難173 如何利用快捷鍵對(duì)選區(qū)創(chuàng)建圖表 352
對(duì)宏指定組合鍵的方式及特點(diǎn) 355
疑難174 如何批量修改圖表標(biāo)簽 355
操作圖表標(biāo)簽的條件 359
疑難175 如何批量移位標(biāo)簽 359
移位圖表標(biāo)簽的限制 362
疑難176 如何對(duì)圖表系列設(shè)置條件格式 362
填充圖表系列的兩種方法 365
7.2 多表管理 366
疑難177 如何將所有圖表大小調(diào)整一致且對(duì)齊 366
圖表名稱(chēng)的特點(diǎn) 367
疑難178 如何將所有圖表轉(zhuǎn)換成JPG文件保存到文件夾 368
將圖片轉(zhuǎn)換為圖片的思路 369
7.3 練習(xí)與思考 369
第8章 圖形對(duì)象 370
8.1 圖形對(duì)象的基本操作 370
疑難179 可以?xún)H僅刪除E列存放的圖表以外的圖形對(duì)象嗎 370
通過(guò)TopLeftCell和BottomRightCell定位圖片位置 371
疑難180 如何將工作簿所在路徑的圖片全部導(dǎo)入工作表 371
Pictures.Insert與Shapes.AddPicture的分別 373
疑難181 如何讓所有圖形對(duì)齊所在單元格左邊框 374
通過(guò)統(tǒng)一TopLeftCell屬性對(duì)齊圖片 374
疑難182 如何實(shí)現(xiàn)所有圖片剛好適應(yīng)所在單元格大小與邊距 375
行高與列寬的特點(diǎn) 376
疑難183 如何將選區(qū)轉(zhuǎn)換成圖片并保存到桌面 377
借用圖表中介實(shí)現(xiàn)區(qū)域轉(zhuǎn)圖片 379
8.2 批注的高級(jí)應(yīng)用 379
疑難184 如何利用快捷鍵在單元格插入當(dāng)前日期的批注 379
通過(guò)設(shè)置AutoSize屬性使批注框自動(dòng)調(diào)整大小 380
疑難185 如何將指定列的數(shù)據(jù)批量追加到批注中 381
強(qiáng)制返回選區(qū)第一列的3種方法 383
疑難186 如何實(shí)現(xiàn)指定區(qū)域批量創(chuàng)建歷史記錄于批注中 383
讓代碼應(yīng)用于所有工作簿的方法 386
疑難187 如何批量導(dǎo)入圖片到單元格的批注中 386
對(duì)批注框設(shè)置背景的條件 388
疑難188 可以對(duì)批注進(jìn)行替換嗎 388
“Unload Me”、“End”和“Exit Sub”的區(qū)別 391
疑難189 如何在所有批注末尾追加當(dāng)前日期 391
利用Isdate判斷批注最后一行是否為日期 392
疑難190 如何批量修改批注的外觀 392
聲明正確的變量類(lèi)型及防錯(cuò) 394
疑難191 可以改造默認(rèn)的插入批注功能嗎 394
正確引用右鍵菜單 395
8.3 圖形對(duì)象綜合應(yīng)用 396
疑難192 可以讓圖片跟隨鼠標(biāo)移動(dòng)嗎 396
利用DoEvents函數(shù)展示動(dòng)畫(huà)過(guò)程 398
疑難193 如何創(chuàng)建圖片目錄與批量插入圖片 398
單元格的行高與列寬限制 401
疑難194 如何利用窗體預(yù)覽圖片 402
控件背景圖片的3種顯示方式 404
疑難195 VBA中的窗體能否轉(zhuǎn)換成圖片保存在工作表中 404
調(diào)用API函數(shù)調(diào)用截圖的快捷鍵 405
疑難196 可以在工作表中導(dǎo)入GIF動(dòng)畫(huà)嗎 406
播放GIF文件時(shí)不能將文件嵌入工作表 408
疑難197 如何實(shí)現(xiàn)輸入品名時(shí)查看當(dāng)前路徑中的同名圖片 408
利用API計(jì)算圖片文件的長(zhǎng)與寬 409
疑難198 可以讓鼠標(biāo)指定圖片時(shí)放大圖片嗎 410
利用API函數(shù)獲取鼠標(biāo)指針坐標(biāo) 413
疑難199 如何實(shí)現(xiàn)圖片批量導(dǎo)入并自動(dòng)排版打印 413
利用FSO技術(shù)中的Getextensionname獲取文件后綴名 417
8.4 練習(xí)與思考 417
第9章 窗體控件 418
9.1 ActiveX控件應(yīng)用 418
疑難200 可以利用列表框強(qiáng)化數(shù)據(jù)有效性嗎 418
列表框相較數(shù)據(jù)有效性的靈活性 420
疑難201 如何利用復(fù)合框引用區(qū)域的唯一值 421
復(fù)合框調(diào)用數(shù)據(jù)的兩種方法及各自?xún)?yōu)勢(shì) 423
疑難202 利用復(fù)合框和列表框?qū)崿F(xiàn)二級(jí)列表 423
MouseMove事件獲取列表框的值的技巧 426
9.2 窗體設(shè)計(jì)技巧 426
疑難203 如何實(shí)現(xiàn)利用快捷鍵啟用和關(guān)閉窗體 426
KeyPress事件可以檢查的按鍵及例外項(xiàng)目 428
疑難204 如何用一個(gè)窗體展現(xiàn)多個(gè)不同內(nèi)容 429
分頁(yè)顯示的兩種方法 432
疑難205 如何用一個(gè)按鈕執(zhí)行多個(gè)功能 433
利用PasswordChar屬性隱藏敏感字符 435
疑難206 如何讓日期輸入器窗體緊跟活動(dòng)單元格 435
影響窗體Left、Top屬性的因素 436
疑難207 如何設(shè)計(jì)五角星窗體 437
顯示五角星窗體的方法 440
疑難208 VBA可以設(shè)計(jì)彩蛋嗎 440
MouseUp事件中Shift參數(shù)的作用 442
疑難209 如何通過(guò)窗體控制實(shí)現(xiàn)工作表隔行插入行 442
通過(guò)Shift參數(shù)控制Insert方法的單元格移動(dòng)方向 446
疑難210 如何在窗體中開(kāi)發(fā)右鍵快捷菜單 446
創(chuàng)建自定義菜單的基本思路 448
疑難211 窗體可以利用鼠標(biāo)自由調(diào)整大小嗎 449
利用API讓窗體可以自由拖動(dòng)的思路 449
疑難212 在窗體Show狀態(tài)下可以調(diào)整控件大小嗎 450
MouseMove事件中各參數(shù)的作用 452
疑難213 在窗體Show狀態(tài)下如何批量設(shè)置控件格式 452
可修改控件字體格式的幾種對(duì)話(huà)框 454
疑難214 在窗體Show狀態(tài)下如何調(diào)整控件位置 455
MouseMove事件中Button參數(shù)的應(yīng)用技巧 456
疑難215 如何檢測(cè)窗體中文本框的數(shù)據(jù)有效性 456
對(duì)文本框設(shè)置數(shù)據(jù)有效性檢驗(yàn)的優(yōu)勢(shì) 457
疑難216 如何設(shè)計(jì)懸浮感應(yīng)式窗體 458
通過(guò)調(diào)整邊距控制窗體的動(dòng)態(tài)效果 460
疑難217 可否瞬間備份所有窗體 460
VBA工程中的子對(duì)象分類(lèi) 461
疑難218 能否對(duì)窗體中所有控件同步縮放 462
窗體的Zoom屬性的特點(diǎn) 464
疑難219 能否通過(guò)代碼生成窗體及控件 464
用代碼操作代碼、窗體和模塊的優(yōu)缺點(diǎn) 466
9.3 窗體與工作表之?dāng)?shù)據(jù)交互 467
疑難220 可以實(shí)現(xiàn)多工作表篩選并將結(jié)果導(dǎo)入窗體嗎 467
列表框的ColumnHeads屬性的特點(diǎn) 469
疑難221 多工作表數(shù)據(jù)輸入窗體如何設(shè)計(jì) 469
利用SetFocus方法控制焦點(diǎn)的轉(zhuǎn)移 472
疑難222 如何開(kāi)發(fā)日歷工具箱 472
Excel對(duì)日期計(jì)算的限制 476
疑難223 如何實(shí)現(xiàn)多條件電話(huà)查詢(xún) 476
“TextBox1_Change”事件與“TextBox1_Exit”事件的異同 478
疑難224 如何開(kāi)發(fā)復(fù)選框批量管理工具 478
認(rèn)識(shí)復(fù)選框 481
疑難225 如何讓窗體控件自適應(yīng)工作表數(shù)據(jù)變化 481
用代碼創(chuàng)建新控件 483
疑難226 可以讓列表框具有拖放功能嗎 484
控件拖放相關(guān)的事件 485
本例僅支持一次拖放一行數(shù)據(jù) 486
疑難227 如何開(kāi)發(fā)四則運(yùn)算自動(dòng)出題機(jī) 486
通過(guò)Rnd函數(shù)產(chǎn)生指定范圍的隨機(jī)數(shù) 488
9.4 開(kāi)發(fā)動(dòng)畫(huà)窗體 489
疑難228 如何讓窗體中的文本框循環(huán)滾動(dòng) 489
控制動(dòng)畫(huà)速度的兩種方式 491
疑難229 窗體中可以播放GIF和Flash動(dòng)畫(huà)嗎 491
Excel播放GIF的原理 493
疑難230 如何讓窗體產(chǎn)生百葉窗動(dòng)畫(huà) 493
疑難231 如何設(shè)計(jì)精美邊框且?guī)?dòng)感的窗體 495
網(wǎng)頁(yè)設(shè)計(jì)與VBA 496
疑難232 如何設(shè)計(jì)動(dòng)態(tài)的啟動(dòng)畫(huà)面 497
網(wǎng)頁(yè)動(dòng)畫(huà)的基本語(yǔ)法 499
疑難233 如何讓窗體中產(chǎn)生跟隨鼠標(biāo)指針的文字動(dòng)畫(huà) 500
VBA設(shè)計(jì)動(dòng)畫(huà)的限制 501
9.5 練習(xí)與思考 501
第10章 插件開(kāi)發(fā) 502
10.1 定制菜單與工具欄、功能區(qū) 502
疑難234 如何定制新菜單、工具欄與功能區(qū) 502
加載宏的特性與安裝方法 506
疑難235 可以任意組合內(nèi)置命令嗎 507
CommandBars對(duì)象的ID參數(shù)的作用 508
疑難236 如何改造內(nèi)置命令的功能 509
修改OnAction屬性替換內(nèi)置功能 510
疑難237 可以提取所有內(nèi)置圖標(biāo)及其編號(hào)嗎 511
ActionControl屬性的作用 513
疑難238 可利用菜單控制分頁(yè)符、零值和批注的顯隱嗎 513
Excel不同版本的自啟動(dòng)路徑 515
疑難239 如何僅僅利用菜單創(chuàng)建工作表目錄 516
讓一個(gè)過(guò)程執(zhí)行多個(gè)菜單執(zhí)行多個(gè)功能的方法 518
疑難240 如何讓菜單具有感應(yīng)功能 518
State屬性的特點(diǎn)與應(yīng)用 520
疑難241 如何讓菜單和功能區(qū)中顯示自己的照片 521
控制功能區(qū)中圖片庫(kù)分布方式的4個(gè)參數(shù) 524
疑難242 如何設(shè)計(jì)可單選與復(fù)選的新工具欄菜單 525
具有單選與復(fù)選特效的圖標(biāo)組合 528
10.2 開(kāi)發(fā)通用插件 528
疑難243 如何開(kāi)發(fā)定位工具箱擴(kuò)展Excel定位的功能 528
Excel定位的限制 533
疑難244 如何開(kāi)發(fā)通用的多區(qū)域復(fù)制插件 534
疑難245 如何開(kāi)發(fā)單元格批量合并插件 535
操作大面積區(qū)域時(shí)利用警告框提示用戶(hù) 538
疑難246 可以利用插件輸入常用VBA代碼嗎 538
計(jì)算當(dāng)前代碼行的行號(hào) 542
疑難247 如何利用插件刪除當(dāng)前工作簿所有代碼 543
ActiveWorkbook與Thisworkbook的分別 544
疑難248 如何利用TreeView控件打造工作簿瀏覽器 545
ImageList控件的特點(diǎn)與作用 547
10.3 封裝DLL插件 548
疑難249 如何封裝數(shù)值與文本互換的DLL插件 548
使用VB 6.0封裝Dll的4個(gè)重點(diǎn) 554
疑難250 如何設(shè)計(jì)字符串分離與表達(dá)式計(jì)算插件 555
利用VB開(kāi)發(fā)功能區(qū)的優(yōu)勢(shì) 563
10.4 練習(xí)與思考 563
第11章 工資管理系統(tǒng) 564
Excel 2010 VBA編程與實(shí)踐節(jié)選
- PC官方版
- 安卓官方手機(jī)版
- IOS官方手機(jī)版