在Excel的工作表上运行宏

时间:2015-02-14 11:47:53

标签: excel vba excel-vba vbscript excel-formula

我可以从Python win32com创建一个excel,所以我知道excel的所有细节。总数或行数,列,工作表名称以及保存位置。现在我想运行一些可以在创建的excel的工作表上运行宏的应用程序。

宏的例子:

Sub Macro2()
'
' Macro2 Macro
'

'
    ActiveSheet.Shapes.AddChart.Select
    ActiveChart.ChartType = xlPie
    ActiveChart.SetSourceData Source:=Range("C2:C6")
End Sub

请告诉哪个应用程序可以执行此操作。

1 个答案:

答案 0 :(得分:0)

嗯,你可能知道,可能会涉及一些工作,但xlwings应该在你的街道上。例如,在VBA中,我们可以通过调用Python来导入函数。来自文档:

Sub MyMacro()
    RunPython ("import mymodule; mymodule.rand_numbers()")
End Sub

#which will run the following or any required, saved function.

import numpy as np
from xlwings import Workbook, Range

def rand_numbers():
    wb = Workbook.caller()  # Creates a reference to the calling Excel file
    n = Range('Sheet1', 'B1').value  # Write desired dimensions into Cell B1
    rand_num = np.random.randn(n, n)
    Range('Sheet1', 'C3').value = rand_num

享受,http://xlwings.org/