用于将值粘贴到.xls中的Python脚本

用于将值粘贴到.xls中的Python脚本,python,excel,xlrd,Python,Excel,Xlrd,我正在创建一个Python脚本,将从另一个文件中提取的值粘贴到Excel模板中 Excel模板包含许多宏,用于处理给定的数据。然后将该数据发送到剪贴板,然后关闭未保存的Excel文件 我使用了xlwt和xlrd的组合(它是一个.xls文件)来尝试写入Excel文件,但这些命令似乎在访问该文件时没有显式打开它(Excel文件从未出现在屏幕上) 我很好奇是否有人能为我指出一些工具的正确方向,这些工具允许我显式地打开Excel文件(例如subprocess.call()),将数据粘贴到一些单元格中,然

我正在创建一个Python脚本,将从另一个文件中提取的值粘贴到Excel模板中

Excel模板包含许多宏,用于处理给定的数据。然后将该数据发送到剪贴板,然后关闭未保存的Excel文件

我使用了xlwt和xlrd的组合(它是一个.xls文件)来尝试写入Excel文件,但这些命令似乎在访问该文件时没有显式打开它(Excel文件从未出现在屏幕上)

我很好奇是否有人能为我指出一些工具的正确方向,这些工具允许我显式地打开Excel文件(例如subprocess.call()),将数据粘贴到一些单元格中,然后让用户完成其余的工作

任何帮助或批评都将不胜感激

编辑: 我一直在尝试将pywin32用于我的目的。它不太管用。虽然它可以成功打开Excel文件并运行宏,但无法将任何值传递到宏的文本框中

这是我目前的代码:

import win32com.client as win32
import time

excel = win32.gencache.EnsureDispatch('Excel.Application')
wb = excel.Workbooks.Open(r'C:\Users\me\Desktop\file.xlsm')
excel.Visible = True

#if I run wb.Application.SendKeys(1) here, it places a 1 into a cell on the worksheet

wb.Application.Run('Set_Up_Sheet') #running the macro, which successfully launches
time.sleep(2)
wb.Application.SendKeys(1) #this seems to have no effect

如何将值发送到此宏的文本框?

您的问题如何与其标题关联?(顺便说一句,你不能有可变键)。很抱歉。我之前想问一个关于另一个话题的问题。堆栈溢出保存了它,我忽略了它。现在已更改。请查看pyAutoIt(),这可能也很有用:请参见以下答案: