[英]Concatenate Two Cells in Excel Using Python Openpyxl And For loop
我想使用 openpyxl 在 excel 中連接兩個單元格。 但是我正在努力在“for 循環”中正確獲取代碼,因為我必須迭代並連接單元格。這是我的代碼到目前為止
import openpyxl
wk=openpyxl.load_workbook(r"C:\\Users\\hp\\Desktop\\Uarch\\ConcatDemo.xlsx")
sh=wk['Sheet1']
rows=sh.max_row
columns=sh.max_column
for row_num in range(1,rows+1):
sh['C{}'.format(row_num)] = '=CONCATENATE(A{},",",B{})'.format(row_num)
wk.save(r"C:\\Users\\hp\\Desktop\\Uarch\\ConcatDemo.xlsx")
我正進入(狀態
IndexError: tuple index out of range
錯誤截圖:
不確定哪個部分出了問題,或者我輸入了錯誤的邏輯。
輸入:
預期輸出:
期待在這方面的幫助..
問題是本節中的字符串格式在連接函數中需要 2 個值而不是 1 個。
'=CONCATENATE(A{},",",B{})'.format(row_num)
我可以用這個實現你想要的行為
import openpyxl
wk=openpyxl.load_workbook("path_to_file.xlsx")
sh=wk['Sheet1']
rows=sh.max_row
columns=sh.max_column
for row_num in range(1,rows+1):
sh['C{}'.format(row_num)] = '=CONCATENATE(A{},",",B{})'.format(row_num,row_num)
wk.save('file_output.xlsx')
隔離錯誤
'A{}B{}'.format(1)
#IndexError
'A{}B{}'.format(1, 1)
'A1B1'
這也可以使用 Pandas 來完成
import pandas as pd
file = pd.read_excel("path_to_file.xlsx", header=None, sheet_name="Sheet1")
file[3] = file[0] + ',' + file[1]
file.to_excel("output_file2.xlsx", index=False, header=False)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.