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