Excel是Office辦公中使用非常頻繁的一個表格制作、數據分析與圖表制作的組件。隨著現在數據處理量越來越大,日常辦公中很多重復性工作耗費了廣大辦公人員越來越多的時間,那么如何才能化繁為簡,提高辦公自動化水平呢?借助Python中的模塊來控制Excel可以讓Excel實現自動化、智能化辦公從而極大減少重復性工作并節約辦公人員的時間。
全書劃分為4部分,共8章。第1部分為第1章,主要介紹Python編輯器的安裝和xlwings庫的安裝。第2部分為第2章至第6章,主要介紹Python中的一些基礎知識和用于處理工作簿、工作表、行列和單元格的xlwings庫函數。第3部分為第7章,主要講解如何在Excel中使用Python來處理Excel數據。第4部分是第8章,主要使用典型的案例批處理Excel數據。本書力求做到深入淺出,將復雜的概念和操作用簡潔淺顯的語言來講述,使讀者可以輕松地使用Python控制Excel,讓Excel自動完成重復性以及批處理工作。
本書非常適合從事財務、行政、人力資源等各行各業需要自動化辦公的人員,以及對Python感興趣的辦公人員。
前言
如何獲取學習資源
第1章 Python快速上手
1.1為什么要學習用Python控制Excel13
1.2Python編程環境的搭建13
1.2.1安裝Python官方的編程環境IDLE13
1.2.2安裝與配置Anaconda和PyCharm18
1.3Python的模塊26
1.3.1初識模塊26
1.3.2模塊的安裝27
1.4讓Excel飛一下30
第2章 Python的基礎語法知識
2.1變量33
2.2數據類型:數字與字符串34
2.2.1數字34
2.2.2字符串35
2.2.3數據類型的查詢38
2.2.4數據類型的轉換39
2.3數據類型:列表、字典、元組與集合41
2.3.1列表41
2.3.2字典46
2.3.3元組和集合47
2.4運算符48
2.4.1算術運算符和字符串運算符48
2.4.2比較運算符49
2.4.3賦值運算符51
2.4.4邏輯運算符52
2.5編碼基本規范53
2.5.1縮進53
2.5.2注釋54
2.6控制語句56
2.6.1if語句56
2.6.2for語句57
2.6.3while語句59
2.6.4控制語句的嵌套60
2.7函數61
2.7.1內置函數62
2.7.2自定義函數65
第3章 Python模塊
3.1模塊的導入70
3.1.1import語句導入法70
3.1.2from語句導入法71
3.2處理文件和文件夾的模塊—os72
3.2.1獲取當前運行的Python代碼文件路徑72
3.2.2列出指定路徑下的文件夾包含的文件和子文件夾名稱73
3.2.3分離文件主名和擴展名73
3.2.4重命名文件和文件夾74
3.3批量處理Excel文件的模塊—xlwings75
3.3.1創建工作簿76
3.3.2保存工作簿76
3.3.3打開工作簿77
3.3.4操控工作表和單元格77
3.4數組計算的數學模塊—NumPy78
3.4.1數組的基礎知識78
3.4.2數組的創建81
3.5數據導入和整理模塊—pandas83
3.5.1二維數據表格DataFrame的創建與索引的修改84
3.5.2文件的讀取和寫入90
3.5.3數據的選取和處理92
3.5.4數據表的拼接99
3.6數據可視化模塊—Matplotlib104
3.6.1繪制折線圖104
3.6.2繪制柱形圖104
3.7模塊的交互105
3.7.1xlwings模塊與pandas模塊的交互105
3.7.2xlwings模塊與Matplotlib模塊的交互106
第4章 使用Python批量處理工作簿和工作表
案例01批量新建并保存工作簿109
舉一反三批量新建并關閉工作簿111
案例02批量打開一個文件夾下的所有工作簿111
舉一反三列出文件夾下所有文件和子文件夾的名稱113
案例03批量重命名一個工作簿中的所有工作表113
舉一反三批量重命名一個工作簿中的部分工作表115
案例04批量重命名多個工作簿116
舉一反三批量重命名多個工作簿中的同名工作表118
案例05在多個工作簿中批量新增工作表119
舉一反三在多個工作簿中批量刪除工作表122
案例06批量打印工作簿123
舉一反三批量打印多個工作簿中的指定工作表125
案例07將一個工作簿的所有工作表批量復制到其他工作簿126
舉一反三將某個工作表的數據批量復制到其他工作簿的指定工作表中128
案例08按條件將一個工作表拆分為多個工作簿129
舉一反三按條件將一個工作表拆分為多個工作表133
舉一反三將多個工作表拆分為多個工作簿134
案例09批量合并多個工作簿中的同名工作表135
舉一反三將工作簿中名稱有規律的工作表合并到一個工作表138
第5章 使用Python批量處理行、列和單元格
案例01精確調整多個工作簿的行高和列寬141
舉一反三精確調整一個工作簿中所有工作表的行高和列寬143
案例02批量更改多個工作簿的數據格式143
舉一反三批量更改多個工作簿的外觀格式146
案例03批量替換多個工作簿的行數據148
舉一反三批量替換多個工作簿中的單元格數據150
舉一反三批量修改多個工作簿中指定工作表的列數據151
案例04批量提取一個工作簿中所有工作表的特定數據152
舉一反三批量提取一個工作簿中所有工作表的列數據154
舉一反三在多個工作簿的指定工作表中批量追加行數據155
案例05對多個工作簿中指定工作表的數據進行分列156
舉一反三批量合并多個工作簿中指定工作表的列數據159
舉一反三將多個工作簿中指定工作表的列數據拆分為多行161
案例06批量提取一個工作簿中所有工作表的唯一值162
舉一反三批量提取一個工作簿中所有工作表的唯一值并匯總165
第6章 使用Python批量進行數據分析
案例01批量升序排序一個工作簿中的所有工作表168
舉一反三批量降序排序一個工作簿中的所有工作表170
舉一反三批量排序多個工作簿中的數據171
案例02篩選一個工作簿中的所有工作表數據172
舉一反三在一個工作簿中篩選單一類別數據175
案例03對多個工作簿中的工作表分別進行分類匯總176
舉一反三批量分類匯總多個工作簿中的指定工作表179
舉一反三將多個工作簿數據分類匯總到一個工作簿180
案例04對一個工作簿中的所有工作表分別求和181
舉一反三對一個工作簿中的所有工作表分別求和并將求和結果寫入
固定單元格183
案例05批量統計工作簿的最大值和最小值184
舉一反三批量統計一個工作簿中所有工作表的最大值和最小值186
案例06批量制作數據透視表187
舉一反三為一個工作簿的所有工作表制作數據透視表189
案例07使用相關系數判斷數據的相關性190
舉一反三求單個變量和其他變量間的相關性193
案例08使用方差分析對比數據的差異194
舉一反三繪制箱形圖識別異常值199
案例09使用描述統計和直方圖制定目標200
舉一反三使用自定義區間繪制直方圖207
案例10使用回歸分析預測未來值209
舉一反三使用回歸方程計算預測值211
第7章 使用Python制作簡單的圖表并設置圖表元素
案例01在Python中制作簡單的圖表214
舉一反三在Python中制作柱形圖215
舉一反三在Python中制作條形圖217
舉一反三在Python中制作餅圖218
案例02在Python中導入Excel數據制作簡單的圖表219
舉一反三導入數據制作散點圖221
舉一反三導入數據制作面積圖222
案例03在Python中制作組合圖表223
舉一反三制作雙折線圖224
案例04添加并設置圖表標題和坐標軸標題225
舉一反三添加圖例228
案例05添加并設置數據標簽229
舉一反三設置y軸的取值范圍231
案例06為組合圖表添加并設置次坐標軸233
舉一反三添加并設置網格線235
第8章 使用Python制作常用圖表
案例01制作柱形圖展示數據的對比關系238
舉一反三批量制作條形圖239
案例02制作折線圖展示數據的變化趨勢240
舉一反三制作折線圖并為最高點添加數據標簽242
舉一反三制作平滑折線圖244
案例03制作散點圖判斷兩組數據的相關性246
舉一反三為散點圖添加線性趨勢線248
舉一反三制作氣泡圖250
案例04制作餅圖展示部分和總體的比例關系252
舉一反三制作圓環圖255
案例05制作雷達圖對比多項指標256
舉一反三制作某一品牌性能評價指標雷達圖260
案例06制作溫度計圖展示工作進度261
舉一反三制作上半年銷售業績的溫度計圖263
第9章 在Excel中調用Python代碼
9.1在工作表中調用Python自定義函數266
9.1.1在Excel中加載xlwings插件266
9.1.2導入并調用Python自定義函數269
9.2在VBA中調用Python自定義函數273
9.2.1通過命令創建文件并調用Python自定義函數273
9.2.2手動創建文件并調用Python自定義函數277
9.2.3VBA代碼和Python代碼的混合使用281
9.3將Python代碼轉換為可執行程序284
9.3.1PyInstaller模塊的語法和參數含義284
9.3.2將Python代碼打包成可執行程序285
9.3.3打包文件的實際應用287