用Python win32遍历Excel列A并写入列B

2 投票
1 回答
3582 浏览
提问于 2025-04-17 21:23

我有一个Excel表格。我想要遍历这个表格的A列,并用A列的值在B列写入一个字符串。我已经成功用Python在Excel中复制和粘贴,并且设置了一些脚本,但现在这个任务让我有点困扰。补充说明:我需要在A列没有更多值时停止。

import win32com.client as win32
excel = win32.gencache.EnsureDispatch('Excel.Application')
excel.Visible = 1;
wb = excel.Workbooks.Open("C:\file.xls");
ws = wb.Worksheets("Sheet1")

我写了下面这段代码应该是什么样子的,但我对Python还不太熟悉,不知道该怎么设置:

starting read cell = A1
starting write cell = B1
for cell in column A:
    ws.Range("B1").Value = str("W"&TEXT(A1,"00000"))

所以,如果我的Excel表格看起来是这样的:

A B
1
2

那么结果应该是:

A B
1 W00001
2 W00002

(注意我在这里使用了Excel公式来写)。

有什么建议吗??谢谢大家!

1 个回答

3

试试这个:

col = ws.Range("A1:A100")
for cell in col:
    cell.Offset(1,2).Value = "W0000%s" % cell.Value

撰写回答