【Python辦公自動化筆記-Excel篇9】跨工作表求和

更新於 發佈於 閱讀時間約 1 分鐘
實務工作上,我們很可能會遇到需要對每張工作表的某一固定位置儲存格求和的情況。比如說,E5儲存格存放每個月的業績總額,以下的程式碼可以求得一整年的總營業額。
# 跨工作表求和
from openpyxl import load_workbook

path = 'D:/sample.xlsx'
wb = load_workbook(path)

data = []
for ws in wb.worksheets: # 拜訪每張工作表
data.append(ws['E5'].value) # E5的值加入data列表
print(sum(data)) # 印出data列表中各元素的和
# 改用較淺白一點的寫法:
ans = 0
for ws in wb.worksheets:
ans += ws['E5'].value
print(ans)
以下的程式碼則是用更具Python風格、更精簡且更漂亮的列表推導式(List Comprehension)來輕鬆達成同樣的功能。
ans = sum([ws['E5'].value for ws in wb.worksheets])
print(ans)
為什麼會看到廣告
avatar-img
1會員
10內容數
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
阿寶哥的沙龍 的其他內容
我們利用工作表的move_range()方法,可以輕鬆地移動儲存格。其中,rows參數的值表示向下移幾列,cols參數的值表示向右移幾行;當rows參數的值是負數時,則表示向上移幾列;cols參數的值負數時,則表示向上移幾行, 也可以一次移動一整個區塊範圍的儲存格。 利用工作表的freeze_pan
我們可以利用工作表的append()方法,在工作表的列尾添加資料列。 利用迴圈的技巧,我們可以批次賦予區塊內所有儲存格相同的值。 我們也可以在指定的列(行)之前插入指定數量的空白列(行),從指定的列(行)開始向下(右)刪除指定數量的列(行)。
其餘讀取整列、整行和所有儲存格等的方法,詳見以下程式碼的註解說明。
區塊儲存格 假設我們有一張工作表如下,而我們打算讀取C3:D6區塊儲存格的值。 以下的程式碼可以列印出C3:D6區塊儲存格的資料,注意openpyxl預設是採以列為主(row-major)拜訪儲存格。 如果需要以行為主(column-major)的方式印出區塊儲存格的值,可以改用以下的程式碼。 列印
儲存格的存取和變數的存取一樣直覺與簡單,但是要注意儲存格的值和儲存格物件是兩個不同的東東;其中,儲存格的值是儲存格物件的一個屬性(value)。工作表ws中儲存格A4可以用ws['A4']這樣的方式表示,也可以用ws.cell(row = 4, column = 2)表示,或簡單地用ws.cell(
學會了工作簿和工作表基本的操作後,讓我們來做一些練習。 1. 新建一個工作簿,並在其內新增12張工作表;將工作表的名稱分別定為1月、2月、3月……12月。 解答: 2. 續上題,批次將工作表的名稱更改為竹科1月、竹科2月、竹科3月……竹科12月。 解答:
我們利用工作表的move_range()方法,可以輕鬆地移動儲存格。其中,rows參數的值表示向下移幾列,cols參數的值表示向右移幾行;當rows參數的值是負數時,則表示向上移幾列;cols參數的值負數時,則表示向上移幾行, 也可以一次移動一整個區塊範圍的儲存格。 利用工作表的freeze_pan
我們可以利用工作表的append()方法,在工作表的列尾添加資料列。 利用迴圈的技巧,我們可以批次賦予區塊內所有儲存格相同的值。 我們也可以在指定的列(行)之前插入指定數量的空白列(行),從指定的列(行)開始向下(右)刪除指定數量的列(行)。
其餘讀取整列、整行和所有儲存格等的方法,詳見以下程式碼的註解說明。
區塊儲存格 假設我們有一張工作表如下,而我們打算讀取C3:D6區塊儲存格的值。 以下的程式碼可以列印出C3:D6區塊儲存格的資料,注意openpyxl預設是採以列為主(row-major)拜訪儲存格。 如果需要以行為主(column-major)的方式印出區塊儲存格的值,可以改用以下的程式碼。 列印
儲存格的存取和變數的存取一樣直覺與簡單,但是要注意儲存格的值和儲存格物件是兩個不同的東東;其中,儲存格的值是儲存格物件的一個屬性(value)。工作表ws中儲存格A4可以用ws['A4']這樣的方式表示,也可以用ws.cell(row = 4, column = 2)表示,或簡單地用ws.cell(
學會了工作簿和工作表基本的操作後,讓我們來做一些練習。 1. 新建一個工作簿,並在其內新增12張工作表;將工作表的名稱分別定為1月、2月、3月……12月。 解答: 2. 續上題,批次將工作表的名稱更改為竹科1月、竹科2月、竹科3月……竹科12月。 解答:
你可能也想看
Google News 追蹤
Thumbnail
/ 大家現在出門買東西還會帶錢包嗎 鴨鴨發現自己好像快一個禮拜沒帶錢包出門 還是可以天天買滿買好回家(? 因此為了記錄手機消費跟各種紅利優惠 鴨鴨都會特別注意銀行的App好不好用! 像是介面設計就是會很在意的地方 很多銀行通常會為了要滿足不同客群 會推出很多App讓使用者下載 每次
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
用 PyInstaller 打包一個簡單計算機應用 (GUI 使用 PyQt5) 本教學將帶您使用 PyQt5 建立一個簡單的計算機應用,並透過 PyInstaller 將其打包成執行檔(EXE)。 1. 安裝所需環境 在開始之前,請確保您已安裝以下工具: 必要套件 Python: 建
Thumbnail
使用 Selenium 自動滾動網頁並抓取文章連結 在網頁爬蟲開發中,我們經常遇到需要自動滾動頁面以加載新內容的場景,特別是在一些無限滾動的頁面中(例如新聞網站或社交媒體)。 本文將介紹如何使用 Python 的 Selenium 庫來實現這一需求,並抓取頁面中的VCC自己文章的連結。
在 Python 的數據處理與科學計算領域,NumPy 是一個不可或缺的基礎工具。它的強大在於提供了高效的多維陣列操作,並支援向量化運算,極大地提升了程式執行效率。本篇文章將詳細介紹 NumPy 的基本概念、功能以及實踐應用,幫助你快速上手這個重要的工具。
Thumbnail
在機器學習和數據分析中,在分類任務中標籤不平衡是普遍存在的問題。本文探討了標籤不平衡對模型訓練和預測性能的影響,並提供解決方案,例如過採樣、欠採樣、調整類別權重和使用適合的不平衡數據評估指標。透過這些方法,能夠提高模型在類別上的預測準確性,從而促進更優化的機器學習應用。
Thumbnail
透過這篇文章,您可以瞭解如何使用Excel的「運算列表」功能來完成淨利模擬,並且得知銷貨收入成長率和員工人數的變動對營業淨利的影響。無論您是公司主管或是對於Excel有興趣的使用者,這篇文章都會對您有所幫助。
Thumbnail
本文介紹瞭如何使用 Python pandas 進行資料分析,包括如何使用 corr() 函數針對數字類型的欄位進行分析,以及如何刪除不需要的欄位和取得想要的小數位數。
Thumbnail
看文章教學之前,可以先下載檔案來試著自己做看看哦!!! 檔案下載 有網友提問,如何將所有的平日加班與假日加班時數合計到K欄,假日加班為了註明星期幾加班,前面分別會加上六、日當作前贅詞。 只不過是加總而已,讓我直接SUM看看好了!!! 答案好像怪怪的,怎麼只有平日的數據加總而已
Thumbnail
/ 大家現在出門買東西還會帶錢包嗎 鴨鴨發現自己好像快一個禮拜沒帶錢包出門 還是可以天天買滿買好回家(? 因此為了記錄手機消費跟各種紅利優惠 鴨鴨都會特別注意銀行的App好不好用! 像是介面設計就是會很在意的地方 很多銀行通常會為了要滿足不同客群 會推出很多App讓使用者下載 每次
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
用 PyInstaller 打包一個簡單計算機應用 (GUI 使用 PyQt5) 本教學將帶您使用 PyQt5 建立一個簡單的計算機應用,並透過 PyInstaller 將其打包成執行檔(EXE)。 1. 安裝所需環境 在開始之前,請確保您已安裝以下工具: 必要套件 Python: 建
Thumbnail
使用 Selenium 自動滾動網頁並抓取文章連結 在網頁爬蟲開發中,我們經常遇到需要自動滾動頁面以加載新內容的場景,特別是在一些無限滾動的頁面中(例如新聞網站或社交媒體)。 本文將介紹如何使用 Python 的 Selenium 庫來實現這一需求,並抓取頁面中的VCC自己文章的連結。
在 Python 的數據處理與科學計算領域,NumPy 是一個不可或缺的基礎工具。它的強大在於提供了高效的多維陣列操作,並支援向量化運算,極大地提升了程式執行效率。本篇文章將詳細介紹 NumPy 的基本概念、功能以及實踐應用,幫助你快速上手這個重要的工具。
Thumbnail
在機器學習和數據分析中,在分類任務中標籤不平衡是普遍存在的問題。本文探討了標籤不平衡對模型訓練和預測性能的影響,並提供解決方案,例如過採樣、欠採樣、調整類別權重和使用適合的不平衡數據評估指標。透過這些方法,能夠提高模型在類別上的預測準確性,從而促進更優化的機器學習應用。
Thumbnail
透過這篇文章,您可以瞭解如何使用Excel的「運算列表」功能來完成淨利模擬,並且得知銷貨收入成長率和員工人數的變動對營業淨利的影響。無論您是公司主管或是對於Excel有興趣的使用者,這篇文章都會對您有所幫助。
Thumbnail
本文介紹瞭如何使用 Python pandas 進行資料分析,包括如何使用 corr() 函數針對數字類型的欄位進行分析,以及如何刪除不需要的欄位和取得想要的小數位數。
Thumbnail
看文章教學之前,可以先下載檔案來試著自己做看看哦!!! 檔案下載 有網友提問,如何將所有的平日加班與假日加班時數合計到K欄,假日加班為了註明星期幾加班,前面分別會加上六、日當作前贅詞。 只不過是加總而已,讓我直接SUM看看好了!!! 答案好像怪怪的,怎麼只有平日的數據加總而已