假设我有一个宏,它将一个数字从单元格 A1 复制并粘贴到单元格 B1,从单元格 A2 到 B2 等。我记录了这个宏。如果我在 A 中有一列数字,我将如何多次运行宏而不必为每个都手动运行它?
这是示例:
A B
1 1 #copies number from column A to column B
2 2
我不想在 A 中的每个单元格上按热键来运行宏。我想同时为 A 列中的所有值运行宏。
假设我有一个宏,它将一个数字从单元格 A1 复制并粘贴到单元格 B1,从单元格 A2 到 B2 等。我记录了这个宏。如果我在 A 中有一列数字,我将如何多次运行宏而不必为每个都手动运行它?
这是示例:
A B
1 1 #copies number from column A to column B
2 2
我不想在 A 中的每个单元格上按热键来运行宏。我想同时为 A 列中的所有值运行宏。
你不能这样做:
Columns("A").Copy Range("B1")
这会将所有 A 列复制到 B 列。
试试这个。这将倒计时,直到三个被减去到 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
从