openpyxl 活动单元格无法复制单元格

问题描述 投票:0回答:1

我需要帮助解决困扰我一段时间的问题。

我正在创建一个自动化程序,将信息从 Excel 复制到另一个应用程序(如记事本)。

一开始我是用Pyautogui来复制粘贴的,但是过了一段时间,就开始失败了。有时,它无法正确复印或什至无法按复印键。

因此,我决定尝试使用 Openpyxl 只复制单元格。但我很难让它发挥作用。

首先,我无法正确获取单元格值。其次,我无法让自动化实时识别活动单元格已更改。

有代码>

`导入openpyxl

而真实:

wb = openpyxl.load_workbook('CONEMB_ZLE.xlsx')

工作表 = wb.active cell = Sheet.active_cell # 获取活动单元格对象

打印(单元格)

wb.save('CONEMB_ZLE') 打印('齐射') wb.close()`

有人可以帮我吗?

提前致谢!

尝试了一切,但我不知道我只需要复制焦点单元格并保存到 var

python excel openpyxl pyautogui
1个回答
0
投票

您实际上并未检索活动单元格的值。要获取值,可以使用单元格对象的 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()
© www.soinside.com 2019 - 2024. All rights reserved.