2023-01-18|閱讀時間 ‧ 約 2 分鐘

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

    實務工作上,我們很可能會遇到需要對每張工作表的某一固定位置儲存格求和的情況。比如說,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)
    分享至
    成為作者繼續創作的動力吧!
    © 2024 vocus All rights reserved.