[問題解決] xlwings が Excel のコピー&ペーストを処理すると、数値が自動的に科学表記になってしまう

問題:ある Excel から別の Excel にデータをコピーした後、数値が自動的に科学表記法に変更されることがわかりました。コードは次のとおりです。

import xlwings as xw
app = xw.App(visible=False,add_book=False)
# 打开两个excel文件
book1 = app.books.open("test1.xlsx")
book2 = app.books.open("test2.xlsx")
# 复制到另一个excel
book1.sheets[0]['A2:AA15'].value = book2.sheets[0]['A2:AA15'].value
# 保存文件
book1.save()
book1.close()
app.kill()

解決策: test1.xlsx の対応するセル形式は従来型なので、過去にコピーしたデータが自動的に科学表記になるので、セル形式をテキストに設定するだけで十分です。

import xlwings as xw
app = xw.App(visible=False,add_book=False)
# 打开两个excel文件
book1 = app.books.open("test1.xlsx")
book2 = app.books.open("test2.xlsx")
# 将这些单元格都设置为文本格式
book1.sheets[0]['A2:AA15'].api.NumberFormat = "@"
# 复制到另一个excel
book1.sheets[0]['A2:AA15'].value = book2.sheets[0]['A2:AA15'].value
# 保存文件
book1.save()
book1.close()
app.kill()

おすすめ

転載: blog.csdn.net/qq_33218097/article/details/129707577