對比VBA學Python:高效實現數據處理自動化

《對比VBA學Python:高效實現數據處理自動化》是電子工業出版社出版圖書,作者是童大謙

幫助讀者以最快的速度,系統地從Excel VBA腳本編程轉入Python腳本編程,或者從Python腳本編程轉入VBA腳本編程,或者同時學會兩種腳本編程方法。

基本介紹

  • 書名:對比VBA學Python:高效實現數據處理自動化
  • 作者:童大謙
  • 出版社:電子工業出版社
  • 出版時間:2022年10月
  • 頁數:568 頁
  • 定價:119 元
  • 開本:16 開
  • ISBN:9787121443107
內容簡介,圖書目錄,作者簡介,

內容簡介

使用Excel VBA和Python雙語對照的方式,能幫助VBA用戶快速掌握Python腳本編程,並使用雙語實現Excel腳本編程和數據處理自動化

圖書目錄

第1章 Excel編程與Python編程概述 1
1.1 關於Excel腳本編程 1
1.1.1 為什麼要進行Excel腳本編程 1
1.1.2 選擇VBA還是選擇Python 2
1.2 使用Excel VBA編寫程式 2
1.2.1 Excel VBA的編程環境 2
1.2.2 編寫Excel VBA程式 4
1.3 使用Python編寫程式 5
1.3.1 Python的特點 5
1.3.2 下載並安裝Python 5
1.3.3 Python的編程環境 6
1.3.4 編寫Python程式 7
1.4 編程規範 9
1.4.1 代碼注釋 9
1.4.2 代碼續行 10
1.4.3 代碼縮進 10
第2章 常量和變數 12
2.1 常量 12
2.1.1 Excel VBA常量 12
2.1.2 Python常量 13
2.2 變數及其操作 14
2.2.1 變數的命名 14
2.2.2 變數的聲明 15
2.2.3 變數的賦值 16
2.2.4 鏈式賦值 18
2.2.5 系列解包賦值 18
2.2.6 交換變數的值 19
2.2.7 變數的清空或刪除 19
2.2.8 Python對象的三要素 20
2.3 變數的數據類型 21
2.3.1 基本的數據類型 21
2.3.2 數據類型轉換 23
2.4 數字 25
2.4.1 整型數字 25
2.4.2 浮點型數字 26
2.4.3 複數 27
2.4.4 類型轉換的有關問題 28
2.4.5 Python的整數快取機制 29
第3章 表達式 30
3.1 算術運算符 30
3.2 關係運算符 32
3.3 邏輯運算符 34
3.4 賦值運算符和算術賦值運算符 36
3.5 成員運算符 36
3.6 身份運算符 38
3.7 運算符的優先權 38
第4章 初識Excel對象模型 42
4.1 Excel對象模型 42
4.1.1 對象及相關概念 42
4.1.2 Excel對象及其層次結構 43
4.2 操作Excel對象模型的一般過程 44
4.2.1 使用Excel VBA操作Excel對象模型的一般過程 44
4.2.2 與Excel相關的Python包 45
4.2.3 xlwings包及其安裝 46
4.2.4 使用xlwings包操作Excel對象模型的一般過程 47
4.3 與Excel對象模型有關的常用操作 49
4.3.1 獲取檔案的當前路徑 49
4.3.2 對象的引用 50
4.3.3 獲取末行行號:給參數指定常數值 51
4.3.4 擴展單元格區域 52
4.3.5 修改單元格區域的屬性 53
第5章 流程控制 54
5.1 判斷結構 54
5.1.1 單分支判斷結構 54
5.1.2 二分支判斷結構 55
5.1.3 多分支判斷結構 56
5.1.4 有嵌套的判斷結構 58
5.1.5 三元操作表達式 60
5.1.6 判斷結構示例:判斷是否為閏年 62
5.2 循環結構:for循環 64
5.2.1 for循環 64
5.2.2 嵌套for循環 66
5.2.3 Python中的for…else的用法 67
5.2.4 for循環示例:求給定數據的最大值和最小值 68
5.3 循環結構:while循環 69
5.3.1 簡單while循環 70
5.3.2 Python中有分支的while循環 72
5.3.3 嵌套while循環 72
5.3.4 while循環示例:求給定數據的最大值和最小值 73
5.4 Excel VBA的其他結構 75
5.4.1 For Each…Next循環結構 75
5.4.2 Do循環結構 76
5.5 其他語句 77
5.5.1 Excel VBA中的其他語句 77
5.5.2 Python中的其他語句 78
第6章 字元串 80
6.1 創建字元串 80
6.1.1 直接創建字元串 80
6.1.2 通過轉換類型創建字元串 83
6.1.3 字元串的長度 84
6.1.4 轉義字元 84
6.2 字元串的索引和切片 86
6.2.1 字元串的索引 86
6.2.2 遍歷字元串 87
6.2.3 字元串的切片 88
6.2.4 字元串的索引和切片示例:使用身份證號求年齡 89
6.3 字元串的格式化輸出 91
6.3.1 實現字元串的格式化輸出 91
6.3.2 字元串的格式化輸出示例:數據保留4位小數 95
6.4 字元串的大小寫 96
6.4.1 設定字元串的大小寫 96
6.4.2 設定字元串的大小寫示例:列數據統一大小寫 98
6.5 字元串的分割和連線 99
6.5.1 字元串的分割 100
6.5.2 字元串的分割示例:分割物資規格 100
6.5.3 字元串的連線 102
6.5.4 字元串的連線示例:合併學生個人信息 104
6.6 字元串的查找和替換 105
6.6.1 字元串的查找 106
6.6.2 字元串的替換 107
6.6.3 字元串的查找和替換示例:提取省、市、縣 108
6.6.4 字元串的查找和替換示例:統一列數據的單位 111
6.7 字元串的比較 113
6.7.1 使用關係運算符進行比較 113
6.7.2 使用函式進行比較 114
6.7.3 字元串的比較示例:找老鄉 116
6.8 刪除字元串兩端的空格 119
6.9 Python中字元串的快取機制 120
第7章 數組 122
7.1 Excel VBA中的數組 122
7.1.1 靜態數組 122
7.1.2 常量數組 124
7.1.3 動態數組 125
7.1.4 數組元素的增、刪、改 126
7.1.5 數組元素的去重 129
7.1.6 數組元素的排序 130
7.1.7 數組元素的計算 131
7.1.8 數組元素的拆分和合併 132
7.1.9 數組元素的過濾 133
7.1.10 創建二維數組 133
7.1.11 改變二維數組的大小 134
7.1.12 Excel工作表與數組交換數據 135
7.1.13 數組示例:給定數據的簡單統計 142
7.1.14 數組示例:突出顯示給定數據的重複值 143
7.1.15 數組示例:求大於某數的最小值 144
7.1.16 數組示例:創建楊輝三角 146
7.2 Python中的數組:列表 147
7.2.1 創建列表 147
7.2.2 索引和切片 151
7.2.3 添加列表元素 152
7.2.4 插入列表元素 153
7.2.5 刪除列表元素 154
7.2.6 列表元素的去重 154
7.2.7 列表元素的排序 155
7.2.8 列表元素的計算 155
7.2.9 列表的拆分和合併 156
7.2.10 列表的過濾 156
7.2.11 二維列表 157
7.2.12 Excel工作表與列表交換數據 158
7.2.13 數組示例:給定數據的簡單統計 160
7.2.14 數組示例:突出顯示給定數據的重複值 161
7.2.15 數組示例:求大於某數的最小值 162
7.2.16 數組示例:創建楊輝三角 163
7.3 Python中的數組:元組 164
7.3.1 元組的創建和刪除 164
7.3.2 元組的索引和切片 165
7.3.3 基本運算和操作 166
7.4 Python中的數組:NumPy數組 167
7.4.1 NumPy包及其安裝 167
7.4.2 創建NumPy數組 168
7.4.3 NumPy數組的索引和切片 170
7.4.4 NumPy數組的計算 171
7.4.5 Excel工作表與NumPy數組交換數據 174
7.5 Python中帶索引的數組:Series和DataFrame 175
7.5.1 pandas包及其安裝 175
7.5.2 pandas Series 176
7.5.3 pandas DataFrame 180
7.5.4 Excel與pandas交換數據 187
第8章 字典 191
8.1 字典的創建 191
8.1.1 創建字典對象 191
8.1.2 Excel VBA中後期綁定與前期綁定的比較 193
8.1.3 Python中更多創建字典的方法 195
8.2 字典元素的索引 196
8.2.1 獲取鍵和值 196
8.2.2 鍵在字典中是否存在 199
8.3 字典元素的增、刪、改 200
8.3.1 增加字典元素 200
8.3.2 修改鍵和值 201
8.3.3 刪除字典元素 202
8.4 字典數據的讀/寫 202
8.4.1 字典數據的格式化輸出 202
8.4.2 Excel工作表與字典之間的數據讀/寫 204
8.5 字典套用示例 207
8.5.1 套用示例1:匯總多行數據中值出現的次數 207
8.5.2 套用示例2:匯總球員獎項 209
8.5.3 套用示例3:匯總研究課題的子課題 212
第9章 集合 215
9.1 集合的相關概念 215
9.1.1 集合的概念 215
9.1.2 集合運算 215
9.2 集合的創建和修改 216
9.2.1 創建集合 216
9.2.2 集合元素的添加和刪除 217
9.3 集合運算 218
9.3.1 交集運算 218
9.3.2 並集運算 220
9.3.3 差集運算 221
9.3.4 對稱差集運算 223
9.3.5 子集和超集運算 225
9.4 集合套用示例 227
9.4.1 套用示例1:統計參加興趣班的所有學生 227
9.4.2 套用示例2:跨表去重 229
9.4.3 套用示例3:找出報和沒有報兩個興趣班的學生 232
第10章 函式 235
10.1 內部函式 235
10.1.1 常見的內部函式 235
10.1.2 Python標準模組函式 238
10.2 第三方庫函式 241
10.3 自定義函式 243
10.3.1 函式的定義和調用 243
10.3.2 有多個返回值的情況 246
10.3.3 可選參數和默認參數 248
10.3.4 可變參數 250
10.3.5 參數為字典 251
10.3.6 傳值還是傳址 253
10.4 變數的作用範圍和生存期 254
10.4.1 變數的作用範圍 255
10.4.2 變數的生存期和Excel VBA中的靜態變數 256
10.5 Python中的匿名函式 257
10.6 函式套用示例 258
10.6.1 套用示例1:計算圓環的面積 258
10.6.2 套用示例2:遞歸計算階乘 260
10.6.3 套用示例3:刪除字元串中的數字 262
第11章 模組與工程 265
11.1 模組 265
11.1.1 內置模組和第三方模組 265
11.1.2 函式式自定義模組 265
11.1.3 腳本式自定義模組 267
11.1.4 類模組 267
11.1.5 窗體模組 267
11.2 工程 268
11.2.1 使用內置模組和第三方模組 268
11.2.2 使用其他自定義模組 269
第12章 調試與異常處理 271
12.1 Excel VBA中的調試 271
12.1.1 輸入錯誤的調試 271
12.1.2 運行時錯誤的調試 272
12.1.3 邏輯錯誤的調試 272
12.2 Python中的異常處理 274
12.2.1 常見異常 274
12.2.2 異常捕獲:單分支的情況 275
12.2.3 異常捕獲:多分支的情況 276
12.2.4 異常捕獲:try…except…else… 277
12.2.5 異常捕獲:try…finally… 277
第13章 深入Excel對象模型 279
13.1 Excel對象模型概述 279
13.1.1 關於Excel對象模型的更多內容 279
13.1.2 Python xlwings的兩種編程方式 279
13.2 Excel套用對象 280
13.2.1 Application對象 280
13.2.2 位置、大小、標題、可見性和狀態屬性 282
13.2.3 其他常用屬性 283
13.3 工作簿對象 285
13.3.1 創建和打開工作簿 285
13.3.2 引用、激活、保存和關閉工作簿 287
13.4 工作表對象 290
13.4.1 相關對象 290
13.4.2 創建和引用工作表 291
13.4.3 激活、複製、移動和刪除工作表 295
13.4.4 隱藏和顯示工作表 297
13.4.5 選擇行和列 299
13.4.6 複製/剪下行和列 301
13.4.7 插入行和列 303
13.4.8 刪除行和列 306
13.4.9 設定行高和列寬 307
13.5 單元格對象 309
13.5.1 引用單元格 309
13.5.2 引用整行和整列 312
13.5.3 引用區域 314
13.5.4 引用所有單元格、特殊區域、區域的集合 318
13.5.5 擴展引用當前工作表中的單元格區域 321
13.5.6 引用末行或末列 323
13.5.7 引用特殊的單元格 324
13.5.8 區域的行數、列數、左上角、右下角、形狀、大小 326
13.5.9 插入單元格或區域 327
13.5.10 單元格的選擇和清除 329
13.5.11 單元格的複製、貼上、剪下和刪除 331
13.5.12 單元格的名稱、批註和字型設定 335
13.5.13 單元格的對齊方式、背景色和框線 339
13.6 Excel對象模型套用示例 341
13.6.1 套用示例1:批量新建和刪除工作表 341
13.6.2 套用示例2:按工作表的某列分類並拆分為多個工作表 343
13.6.3 套用示例3:將多個工作表分別保存為工作簿 346
13.6.4 套用示例4:將多個工作表合併為一個工作表 347
第14章 界面設計 350
14.1 窗體 350
14.1.1 創建窗體 350
14.1.2 窗體的主要屬性、方法和事件 351
14.2 控制項 354
14.2.1 創建控制項的方法 354
14.2.2 控制項的共有屬性 355
14.2.3 控制項的布局 357
14.2.4 標籤控制項 358
14.2.5 文本框控制項 360
14.2.6 命令按鈕控制項 363
14.2.7 單選按鈕控制項 365
14.2.8 複選框控制項 366
14.2.9 列表框控制項 369
14.2.10 組合框控制項 372
14.2.11 旋轉按鈕控制項 374
14.2.12 方框控制項 375
14.3 界面設計示例 376
第15章 檔案操作 383
15.1 文本檔案的讀/寫 383
15.1.1 創建文本檔案並寫入數據 383
15.1.2 讀取文本檔案 386
15.1.3 向文本檔案追加數據 388
15.2 二進制檔案的讀/寫 390
15.2.1 創建二進制檔案並寫入數據 390
15.2.2 讀取二進制檔案 392
第16章 Excel工作表函式 394
16.1 Excel工作表函式概述 394
16.1.1 Excel工作表函式簡介 394
16.1.2 在Excel中使用工作表函式 394
16.1.3 在Excel VBA中使用工作表函式 396
16.1.4 在Python中使用工作表函式 397
16.2 常用的Excel工作表函式 399
16.2.1 SUM函式 399
16.2.2 IF函式 401
16.2.3 LOOKUP函式 406
16.2.4 VLOOKUP函式 408
16.2.5 CHOOSE函式 411
第17章 Excel圖形 413
17.1 創建圖形 413
17.1.1 點 413
17.1.2 直線段 415
17.1.3 矩形、圓角矩形、橢圓和圓 416
17.1.4 多義線和多邊形 418
17.1.5 曲線 420
17.1.6 標籤 422
17.1.7 文本框 423
17.1.8 標註 424
17.1.9 自選圖形 426
17.1.10 藝術字 428
17.2 圖形變換 429
17.2.1 圖形平移 429
17.2.2 圖形旋轉 430
17.2.3 圖形縮放 431
17.2.4 圖形翻轉 433
17.3 圖片操作 434
17.3.1 圖片的添加 434
17.3.2 圖片的幾何變換 435
第18章 Excel圖表 437
18.1 創建圖表 437
18.1.1 創建圖表工作表中的圖表 437
18.1.2 創建嵌入式圖表 440
18.1.3 使用Shapes對象創建圖表 442
18.1.4 綁定數據 444
18.2 圖表及其序列 445
18.2.1 設定圖表的類型 445
18.2.2 Chart對象的常用屬性和方法 449
18.2.3 設定序列 450
18.2.4 設定序列中單個點的屬性 453
18.3 坐標系 456
18.3.1 Axes對象和Axis對象 456
18.3.2 坐標軸標題 459
18.3.3 數值軸的取值範圍 460
18.3.4 刻度線 461
18.3.5 刻度標籤 462
第19章 Excel數據透視表 465
19.1 數據透視表的創建與引用 465
19.1.1 使用PivotTableWizard方法創建數據透視表 465
19.1.2 使用快取創建數據透視表 468
19.1.3 數據透視表的引用 470
19.1.4 數據透視表的刷新 471
19.2 數據透視表的編輯 472
19.2.1 添加欄位 472
19.2.2 修改欄位 474
19.2.3 設定欄位的數字格式 475
19.2.4 設定單元格區域的格式 476
19.3 數據透視表的布局和樣式 478
19.3.1 設定數據透視表的布局 478
19.3.2 設定數據透視表的樣式 479
19.4 數據透視表的排序和篩選 480
19.4.1 數據透視表的排序 480
19.4.2 數據透視表的篩選 481
19.5 數據透視表的計算 483
19.5.1 設定總計行和總計列的顯示方式 484
19.5.2 設定欄位的匯總方式 485
19.5.3 設定數據的顯示方式 486
第20章 正則表達式 487
20.1 正則表達式概述 487
20.1.1 什麼是正則表達式 487
20.1.2 使用正則表達式 488
20.2 正則表達式的編寫規則 494
20.2.1 元字元 494
20.2.2 重複 499
20.2.3 字元類 503
20.2.4 分支條件 507
20.2.5 捕獲分組和非捕獲分組 508
20.2.6 零寬斷言 512
20.2.7 負向零寬斷言 513
20.2.8 貪婪與懶惰 514
20.3 正則表達式的套用示例 516
20.3.1 套用示例1:計算各班的總人數 516
20.3.2 套用示例2:整理食材數據 518
20.3.3 套用示例3:數據匯總 519
第21章 統計分析 522
21.1 數據的導入 522
21.1.1 使用對象模型導入數據 522
21.1.2 使用pandas包導入數據 522
21.2 數據整理 527
21.2.1 使用對象模型進行數據整理 527
21.2.2 使用Excel函式進行數據整理 527
21.2.3 使用Power Query和pandas包進行數據整理 527
21.2.4 使用SQL進行數據整理 529
21.3 數據預處理 530
21.3.1 數據去重 530
21.3.2 缺失值處理 533
21.3.3 異常值處理 536
21.3.4 數據轉換 542
21.4 描述性統計 543
21.4.1 描述集中趨勢 543
21.4.2 描述離中趨勢 545
第22章 Python與Excel VBA混合編程 547
22.1 在Python中調用Excel VBA代碼 547
22.1.1 Excel VBA編程環境 547
22.1.2 編寫Excel VBA程式 547
22.1.3 在Python中調用Excel VBA函式 548
22.2 在Excel VBA中調用Python 549
22.2.1 xlwings載入項 549
22.2.2 編寫Python檔案 551
22.2.3 在Excel VBA中調用Python檔案 551
22.2.4 xlwings載入項使用“避坑”指南 552
22.3 自定義函式 553
22.3.1 用Excel VBA自定義函式 553
22.3.2 用Excel VBA調用Python自定義函式的準備工作 554
22.3.3 編寫Python檔案並在Excel VBA中調用 555
22.3.4 常見錯誤 555

作者簡介

童大謙,具有15年以上VB、VBA、.NET開發經驗,開發了多個數學、數據分析與可視化方面的軟體,以及與科研院所合作開發了若干個軟體系統。對Python、MATLAB、SPSS、R等數據分析軟體非常熟悉,出版多本相關圖書。曾在高校執教,CSDN高級講師,全網學員近20萬人。

相關詞條

熱門詞條

聯絡我們