我需要帮助解决困扰我一段时间的问题。
我正在创建一个自动化程序,将信息从 Excel 复制到另一个应用程序(如记事本)。
一开始我是用Pyautogui来复制粘贴的,但是过了一段时间,就开始失败了。有时,它无法正确复印或什至无法按复印键。
因此,我决定尝试使用 Openpyxl 只复制单元格。但我很难让它发挥作用。
首先,我无法正确获取单元格值。其次,我无法让自动化实时识别活动单元格已更改。
有代码>
`导入openpyxl
而真实:
wb = openpyxl.load_workbook('CONEMB_ZLE.xlsx')
工作表 = wb.active cell = Sheet.active_cell # 获取活动单元格对象
打印(单元格)
wb.save('CONEMB_ZLE') 打印('齐射') wb.close()`
有人可以帮我吗?
提前致谢!
尝试了一切,但我不知道我只需要复制焦点单元格并保存到 var
您实际上并未检索活动单元格的值。要获取值,可以使用单元格对象的 value 属性。
cell_value = cell.value
打印(单元格值)
代码中的 while True 循环表明您希望持续监视活动单元格并在其更改时执行某些操作。但是,您提供的代码不包含任何检测单元格更改的逻辑。
导入 win32com.client
class ExcelEventHandler:
def OnSheetSelectionChange(self, *args):
# This method is called when the active cell changes
active_cell = args[0].Address
print(f"Active cell changed to: {active_cell}")
# Connect to Excel
excel = win32com.client.Dispatch("Excel.Application")
excel.Visible = True
# Get the active sheet
sheet = excel.ActiveSheet
# Create an event handler
event_handler = win32com.client.WithEvents(sheet, ExcelEventHandler)
# Start the event loop
pythoncom.PumpMessages()