前提・実現したいこと
空白のセルとその横のセルを結合する
・ここに質問の内容を詳しく書いてください。
pythonでエクセルのデータを抜き出すプログラムを作成しています。
その際、空白のセルがあると抜き出しづらいので、文字の入ったセルと結合したいと考えております。
発生している問題
エラーメッセージ
'Traceback (most recent call last):
File "C:\Users\jimuark2020-3\AppData\Local\Programs\Python\Python38-32\lib\site-packages\openpyxl\descriptors\base.py", line 55, in _convert
value = expected_type(value)
TypeError: int() argument must be a string, a bytes-like object or a number, not 'NoneType'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<stdin>", line 8, in <module>
File "C:\Users\jimuark2020-3\AppData\Local\Programs\Python\Python38-32\lib\site-packages\openpyxl\worksheet\worksheet.py", line 587, in merge_cells
cr = CellRange(range_string=range_string, min_col=start_column, min_row=start_row,
File "C:\Users\jimuark2020-3\AppData\Local\Programs\Python\Python38-32\lib\site-packages\openpyxl\worksheet\cell_range.py", line 56, in init
self.min_row = min_row
File "C:\Users\jimuark2020-3\AppData\Local\Programs\Python\Python38-32\lib\site-packages\openpyxl\descriptors\base.py", line 105, in set
value = _convert(self.expected_type, value)
File "C:\Users\jimuark2020-3\AppData\Local\Programs\Python\Python38-32\lib\site-packages\openpyxl\descriptors\base.py", line 57, in _convert
raise TypeError('expected ' + str(expected_type))
TypeError: expected <class 'int'>'
該当のソースコード
Python
ソースコード
'import openpyxl
import tkinter, tkinter.filedialog, tkinter.messagebox
import os
root = tkinter.Tk()
root.withdraw()
fTyp = [("","*")]
iDir = os.path.abspath(os.path.dirname("file"))
tkinter.messagebox.showinfo('キーワード抽出','抽出するファイルを選択してください')
file = tkinter.filedialog.askopenfilename(filetypes = fTyp,initialdir = iDir)
tkinter.messagebox.showinfo('キーワード抽出',file)
wb = openpyxl.load_workbook(file)
ws = wb['Sheet1']
for rows in ws['A1':'L30']:
for cell in rows:
if cell.value == None:
cell.value = cell.value
else:
cell.value = cell.value.replace(" ", "")
for rows in ws['A1':'L30']:
for cell in rows:
if cell.value == None:
h = cell.coordinate
g = cell.row
n = cell.column
k = ws.cell(row =g, column =n+1).coordinate
ws.merge_cells('h:k')
wb.save(file)'
試したこと
ws.merge cells('h:k')
の部分のクオーテーションの位置を変えたり、コロンをコンマにするなどいろいろ試しましたが別のエラーメッセージが出てきて駄目でした。
おそらく文字と数値の混合によるエラーであると思うのですが、解決方法がわかりません。詳しい方がいらっしゃいましたら、教えていただけると幸いです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/09/02 02:25
2020/09/02 02:30
2020/09/02 02:45 編集
2020/09/02 02:47
2020/09/02 02:57