如何将单个值附加到“列”中的每个单元格;A「;使用Python openpyxl?

如何将单个值附加到“列”中的每个单元格;A「;使用Python openpyxl?,python,excel,openpyxl,Python,Excel,Openpyxl,我是一名Python初学者,我发现了openpyxl,它已经对我非常有用,但我陷入了僵局,在任何地方都找不到解决方案。列“A”标题为“区域”,具有“加拿大”、“中部”、“东北部”、“西部”等值。我需要将列中的每个值替换为当前月份名称(即四月),然后将列标题重命名为“月份”。下面的代码是我尝试过的 ws['A1':'A-1']='April' 当我运行命令时,我得到“ValueError:A1:A-1不是有效的坐标或范围” 报告中的行数每月都会发生变化,因此我无法尝试“A1:A500”这样的范围

我是一名Python初学者,我发现了openpyxl,它已经对我非常有用,但我陷入了僵局,在任何地方都找不到解决方案。列“A”标题为“区域”,具有“加拿大”、“中部”、“东北部”、“西部”等值。我需要将列中的每个值替换为当前月份名称(即四月),然后将列标题重命名为“月份”。下面的代码是我尝试过的

ws['A1':'A-1']='April'

当我运行命令时,我得到“ValueError:A1:A-1不是有效的坐标或范围”

报告中的行数每月都会发生变化,因此我无法尝试“A1:A500”这样的范围


非常感谢您的任何帮助。谢谢。

我想这会有用的

from openpyxl import *
from datetime import datetime
mydate=datetime.now()
currentYear =mydate.strftime("%B")
wb = load_workbook(r"path\to\your\xlsx\file") 
sheet = wb.active  
all_list=[]
for c in sheet['A']:
   print(c.value)
   all_list.append(c.value)
for data,value in enumerate(all_list):
    data+=1
    sheet["A"+str(data)]=currentYear
sheet['A1']="Month"

wb.save(r"path\to\your\xlsx\file")


这应该很简单

ws["A1"] = "Month"
for cell in ws["A"][1:]:
    cell.value = "April"

要进行更复杂的更改,请使用用户
ws.iter\u rows()
,您可能希望自动计算月份。

这会在单元格上循环两次。非常好!这很有魅力。非常感谢你!