在Excel中的宏中运行宏

时间:2016-07-06 10:36:49

标签: excel excel-vba macros vba

我正在尝试编写一个运行2个其他宏的宏。但是,第二个宏要求您选择数据所在文件的位置。有没有办法为10个不同的文件位置运行第二个宏10次。总之,我将有两个宏的循环。

以下sudo代码的一些内容:

file_loc = ('c:/users/desktop/....sim1.csv','c:/users/desktop/....sim2.csv'..'sim3'...sim10')

for i in range (10): 
    Run Macro1 
    wait for calculation 

    Run Macro2
    file = file_loc(i)
    wait for calculation 

    copy cell A10 (result) to AZ(i)
    next i

这是VBA的可能吗?

1 个答案:

答案 0 :(得分:0)

假设您的宏看起来像这样:

Private Sub Macro1()
    ' Prompt for location
    ' Do stuff
End Sub

你可以将其重构为:

Private Sub Macro1(Optional location As String = "")
    ' Test whether location was specified, and prompt for it if not
    ' Do stuff
End Sub

这样,您可以遍历一个位置列表并将每个位置作为参数传递,同时仍然可以在没有此信息的情况下使用宏。