#! python3
# updataProduce.py - corrects costs in produce sales spreadsheet
from openpyxl import Workbook
wb = Workbook('produceSales.xlsx')
sheet = wb.active
# The produce types and their updated price
PRICE_UPDATES = {'Garlic': 3.07, 'Celery': 1.19, 'Lemon':1.27}
# TODO: loop through the rows and update the PRICE
countRow = sheet.max_row
print(countRow)
for rowNum in range(2, countRow) :
produceName = sheet.cell(row = rowNum, column = 1).value
if produceName in PRICE_UPDATES:
sheet.cell(row = rowNum, column = 2).value = PRICE_UPDATES[produceName]
wb.save('updateProduceSales.xlsx')
Это должно сработать для вас сейчас. Сообщение об ошибке объясняет, в чем проблема:
countRow = sheet.max_row()
AttributeError: 'NoneType' object has no attribute 'max_row'
Это говорит о том, что объект не имеет атрибута с именем max_row (). Однако он имеет имя max_row. Простая ошибка, но с твоим кодом все в порядке.