Openpyxl“数字存储为文本”

问题描述 投票:0回答:1

背景:

  • 使用 Pycharm 和 Openpyxl
  • 我经常使用 Excel 工作,并一直尝试使用 Python 自动执行一些日常小任务,以增加我对这门语言的理解

情况:

  • 我正在尝试修改现有的 xlsx 电子表格,并且已经能够成功更改列宽、缩放等格式。
  • 但是,我确实在与可怕的“数字存储为文本”场景作斗争。有特定范围的列 (Z:AZ) 始终包含数字,但默认情况下它们存储为文本。

问题:

  • 有人有在现有工作表中将文本转换为数字的经验吗?

我在 StackOverflow 以及许多其他网站上进行了广泛的搜索,但似乎找不到适合我的解决方案。

任何见解将不胜感激!

python pycharm openpyxl
1个回答
6
投票

当您收到“数字存储为文本”错误时,我相信您在 Excel 工作表中添加的值是字符串。 请通过显示变量的类型来确认这一点。

type(variable_name)

如果是

<class'str'>
,则在将变量传递到 Excel 工作表时添加
float

your_number = '412.5876'
ws['A1'] = float(your_number)

这应该可以解决您的问题。

© www.soinside.com 2019 - 2024. All rights reserved.