python for loop iteration in excel



我有一个包含两个不同列的 excel 工作表,我想一次获取一个数据,比如来自 A2 和 B2 的数据值,然后执行某些操作,然后再次从 B3 和 C3 等地获取值......直到 B50 和 C50。我为此编写了以下代码,但我认为这是不正确的。另外,我是python的新手,所以没有太多知识。任何帮助将不胜感激。提前感谢!

wb = openpyxl.load_workbook('Inputexcel.xlsm')
sheet = wb['Sheet1'] 
tup1 = (sheet['A2':'A50'])
tup2 = (sheet['B2':'B50'])
for i in range(0,48):      
text = tup1[i].value
i+=1

我能够为单个值实现它,并使用以下代码执行操作。但我的主要目的是在我遇到问题的地方迭代 excel 的所有值。 单值代码:

wb = openpyxl.load_workbook('Inputexcel.xlsm')
sheet = wb['Sheet1']
text = sheet['A2'].value
eid = sheet['B2'].value

如果有任何帮助,还共享要执行的操作:

doc = docx.Document('mydoc.docx')
doc.paragraphs[9].runs[6].clear()
doc.paragraphs[9].runs[6].text
doc.paragraphs[9].add_run(text).bold = True
doc.save('mydoc ' + str(eid) + '.docx')

而不是在 tup1 和 tup2 中添加单元格 - 我建议将值直接添加到 tup1 和 tup2 ...如下所示:

wb = openpyxl.load_workbook('Book1.xlsx')
sheet = wb['Sheet1'] 
tup1 = []
tup2 = []
for i in range(2,50):
rowA ='A{0}'.format(i)
rowB = 'B{0}'.format(i)
tup1.append(sheet[rowA].value)
tup2.append(sheet[rowB].value)
print (tup1)
print (tup2)

最新更新