iT邦幫忙

0

python模組openpyxl的問題

  • 分享至 

  • xImage

想問一下各位 圖中a列大部分我都使用了跨欄置中,所以我讀取到像是a2這種格子的時候會顯示none,請問有什麼方法可以做到再excel有跨欄置中的效果,然後python這邊可以讀到格子內的東西,抱歉excel真的很久沒碰,上次碰大概三四年前XD
https://ithelp.ithome.com.tw/upload/images/20220820/20150570Tx8nAXngBZ.png
OS:MacOS Montery 12.5.1
excel:版本16.64 授權:office家用版2021

看更多先前的討論...收起先前的討論...
froce iT邦大師 1 級 ‧ 2022-08-20 09:19:56 檢舉
A2的值用A1去帶,這個沒辦法。
跨欄置中連在vba我記得好像都是這樣處理。
froce iT邦大師 1 級 ‧ 2022-08-20 09:22:51 檢舉
我個人是建議架構上,excel可以弄成負責顯示的那塊,處理資料python應該就夠了
froce iT邦大師 1 級 ‧ 2022-08-20 10:54:22 檢舉
啊,不過openpyxl你可以用worksheet.merged_cells.ranges取得所有合併儲存格的range
https://stackoverflow.com/questions/39574991/how-to-detect-merged-cells-in-an-excel-sheet
fuwei iT邦新手 5 級 ‧ 2022-08-21 12:48:46 檢舉
謝謝樓上大佬的回答~
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

0
mackuo
iT邦研究生 1 級 ‧ 2022-08-21 11:42:55

不曉得是不是樓主要的方式,
原始範例:
https://ithelp.ithome.com.tw/upload/images/20220821/20122335NN4uywSNhW.png

import pandas as pd
import numpy as np
Location = '1110821_107學年度大專學生統計表.xlsx'
df = pd.read_excel(Location)
df

https://ithelp.ithome.com.tw/upload/images/20220821/20122335jfCUPZzjpl.png

# 透過fillna把跨欄的NAN填成前面的值
df['學校名稱'] = df['學校名稱'].fillna(method='ffill')
df

填完的結果:
https://ithelp.ithome.com.tw/upload/images/20220821/20122335mFjaZKyhpp.png

fuwei iT邦新手 5 級 ‧ 2022-08-21 23:24:08 檢舉

ok 謝謝大佬分享~

我要發表回答

立即登入回答