22

Whenever I try to read Excel using

part=pd.read_excel(path,sheet_name = mto_sheet)

I get this exception:

<class 'Exception'> 'ReadOnlyWorksheet' object has no attribute 'defined_names'

This is if I use Visual Studio Code and Python 3.11. However, I don't have this problem when using Anaconda. Any reason for that?

Mark Rotteveel
  • 100,966
  • 191
  • 140
  • 197
Panda
  • 245
  • 1
  • 2
  • 6

3 Answers3

46

The error seems to be caused by the latest version of openpyxl. You can fix it by downgrading to a lower version

pip install --force-reinstall -v "openpyxl==3.1.0"
InsertCheesyLine
  • 1,112
  • 2
  • 11
  • 19
3

Seems like the issue is fixed in openpyxl 3.1.2

pip install --upgrade openpyxl
Håvard
  • 65
  • 7
2

Possible workaround: create new excel file, with default worksheet name ("Sheet1" etc.) and copy and paste data here.

(tested on Python 3.10.9 + openpyxl==3.1.1)

liquide
  • 1,346
  • 3
  • 20
  • 28