【问题标题】:Automation Excel from PythonPython中的自动化Excel
【发布时间】:2013-03-17 22:50:28
【问题描述】:

在我的公司,我们在开发和生产环境中使用 Linux。但我们有一台运行 Windows 和 Excel 的机器,因为我们使用第三方应用程序 excel 插件将金融市场数据获取到机器。插件提供了一些函数(就像 Excel 函数),用于将这些数据输入本地计算机,然后发送回 MySql 数据库。我们还开发了一些 VBA 脚本来自动化任务,但仍然对结果不满意。 我正在考虑使用 Python 来完成所有这些工作,但在开始之前,我需要找到一个可以做的 Python 包

  1. 使用 python 操作 Excel(及其加载项)并在不打开 Excel 的情况下使用其功能?
  2. 如果我需要打开 Excel,我需要每天自动执行脚本的任务,或者在一天中的特定时刻(市场数据需要在特定时间提供)

感谢建议

【问题讨论】:

    标签: python excel pyxll


    【解决方案1】:

    您需要 Python Win32 扩展 - http://sourceforge.net/projects/pywin32/

    (现已迁移到 GitHub:https://github.com/mhammond/pywin32

    然后你就可以使用COM了。

    from win32com.client import Dispatch
    excel = Dispatch('Excel.Application')
    wb = excel.Workbooks.Open(r'c:\path\to\file.xlsx')
    ws = wb.Sheets('My Sheet')
    # do other stuff, just like VBA
    wb.Close()
    excel.Quit()
    

    您可以将脚本放在 Windows 任务计划程序上,以便在您需要的时候运行。

    【讨论】:

    【解决方案2】:

    作为替代方案,您可以考虑使用 openpyxl。

    import openpyxl
    wb= openpyxl.Workbook()
    ws = wb.get_active_sheet()
    ws.title = 'My Title'
    wb.save('C:\\Development\\Python\\alpha.xlsx')
    

    这是我正在阅读的书中的一章。

    https://automatetheboringstuff.com/chapter12/

    运气

    【讨论】:

      猜你喜欢
      • 2022-01-10
      • 2020-02-18
      • 2012-04-15
      • 2011-02-11
      • 1970-01-01
      • 2013-04-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多