我從csv數據創建了一個工作表,我想創建一個新的工作表並將所有(十六進制)數據轉換爲十進制格式。我的問題是如何將每個單元格映射到工作表1並將其全部放入工作表2中,其中唯一的區別是單元格上的= HEX2DEC(..)。Python xlsxwriter - hex2dec多個單元格
from xlsxwriter.workbook import Workbook
for csvfile in ['hexData']:
workbook = Workbook(csvfile + '.xlsx')
worksheet = workbook.add_worksheet('hexSheet')
worksheet2 = workbook.add_worksheet('decSheet')
with open(csvfile, 'rb') as f:
reader = csv.reader(f)
for r, row in enumerate(reader):
for c, col in enumerate(row):
worksheet.write(r, c, col)
with open(csvfile, 'rb') as f:
reader = csv.reader(f)
for r, row in enumerate(reader):
for c, col in enumerate(row):
worksheet2.write_formula(r, c, 'HEX2DEC(hexSheet!A2:hexSheet!F16)')
結果是#VALUE!在dec工作表的所有單元格上。當我手動應用該公式時,會發生同樣的問題,所以它可能是我對公式本身應用於多個單元格的誤解。
對此會感激一些方向。
乾杯
'='缺少。嘗試寫引文,例如''「= HEX2DEC(...」''。另外,如果你的系統是非英文的,請注意Excel函數名是本地化的(翻譯過的)。 – handle
是的,我的意思是不包括=也包含它。工作仍然 – arsenal88
你不必打開文件兩次,你可以同時寫入'工作表' – stovfl