У меня проблема с пакетом openpyxl. Чтобы проиллюстрировать проблему, я подготовил простой пример.
У меня есть файл Excel, который содержит только формулу =A1
в ячейке B1
. Я хотел бы (1) записать значение 123 в ячейку A1
, (2) сохранить рабочую книгу, (3) снова открыть ее и (4) прочитать содержимое ячейки B1
. Вместо 123
я получаю None
. Ниже вы можете найти простой код, который (я надеюсь) должен делать, как описано выше. Кто-нибудь может увидеть, что я делаю не так?
import openpyxl
# open file and select sheet
wb = openpyxl.load_workbook('example.xlsx')
sheet = wb.get_sheet_by_name('Sheet1')
# write value into cell A1
sheet['A1'].value = 123
# save the file and close it
wb.save('example.xlsx')
wb.close()
# open the file again and select sheet
wb = openpyxl.load_workbook('example.xlsx', data_only=True)
sheet = wb.get_sheet_by_name('Sheet1')
# read value from cell containing referece to cell A1 => why it returns None?
print(sheet['B1'].value)
# close the file
wb.close()
Многие, спасибо
Macky
PS: я использую python 3.5.5, openpyxl 2.5.6 и MS Office 2013 на Win7.