gpt4 book ai didi

python - "Worksheet range names does not exist"openpyxl KeyError

转载 作者:太空宇宙 更新时间:2023-11-03 12:46:00 27 4
gpt4 key购买 nike

首先让我说我已经尝试寻找,但似乎找不到类似的情况,所以如果您觉得这很熟悉,请不要太难过。我正在使用 Python 2.7openpyxl 2.2.5 版(我需要使用 2.7,并且出于其他原因使用了旧模块。)

我是 Python 的新手,一般来说读/写代码,所以我在实现它之前在命令行上测试它:

  1. 我在 Python27 文件目录中创建了一个文件 foo.xlsx,其中包含我通过 Excel 手动输入的一些值。

  2. 然后我在 Python 命令行上使用这个简单的代码来测试我的代码

    from openpyxl import load_workbook
    wb = load_workbook('foo.xlsx')
    sheet_ranges = wb['range names']

然后导致以下错误:

File "C:\Python27\lib\openpyxl\workbook.workbook.py", line 233 in getitem raise KeyError("Worksheet {0} does not exist.".format(key))
KeyError: 'Worksheet sheet range names does not exist'

所以我认为这与没有导入整个 openpyxl 模块有关。我继续这样做并运行了整个过程,但它导致了同样的错误。

有人可以让我知道我做错了什么/如何解决这个问题吗?

附加信息:

  • 我之前成功写入一个空文件,然后读取值。这为我提供了正确的值,除了我通过 Excel 手动写入的内容 - 手动输入的单元格返回 None 或 Nonetype。问题似乎与手动输入的单元格有关。

  • 我确实在访问文件之前点击了保存,不用担心

这是在同一个目录中,所以我知道这不是位置问题。

最佳答案

以下命令没有意义:

sheet_ranges = wb['range names']

通常您打开一个工作簿然后访问其中一个工作表,下面为您提供了一些有关如何完成此操作的示例:

import openpyxl 

wb = openpyxl.Workbook()
wb = openpyxl.load_workbook(filename = 'input.xlsx')

# To display all of the available worksheet names
sheets = wb.sheetnames
print sheets

# To work with the first sheet (by name)
ws = wb[sheets[0]]
print ws['A1'].value

# To work with the active sheet
ws = wb.active
print ws['A1'].value

# To work with the active sheet (alternative method)
ws = wb.get_active_sheet()
print ws['A1'].value

如果要在工作簿中显示任何命名范围,可以执行以下操作:

print wb.get_named_ranges()

关于python - "Worksheet range names does not exist"openpyxl KeyError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35693094/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com