多次运行宏

时间:2013-08-16 18:12:01

标签: vba

假设我有一个宏,它将一个数字从单元格A1复制并粘贴到单元格B1,从单元格A2到B2等。我记录了这个宏。如果我在A中有一列数字,我怎么能多次运行宏而不必为每一个手动运行它?

以下是示例:

    A    B
    1    1    #copies number from column A to column B
    2    2

我不想在A中的每个单元格上按热键来运行宏。我想同时为A列中的所有值运行宏。

2 个答案:

答案 0 :(得分:2)

你不能这样做:

Columns("A").Copy Range("B1")

这会将所有A列复制到B列。

答案 1 :(得分:1)

试一试。这将倒计时,直到三减去0.您可以将其替换为填充的行数 - 1。

Sub Test()
Call RunMainMacro(3) 'run macro 3 times
End Sub

Sub RunMainMacro(ByRef Times)
Do
    Application.Run " 'project1.xlsm'!MainMacro"
    Times = Times - 1
    DoEvents
Loop Until Times = 0
End Sub

来自