我有一个 excel 文件,里面有 12 个工作表,每个工作表对应一个月。我有三个宏,它们在一个工作表中执行。是否可以这样实现:如果我在 10 月工作表中运行宏,那么它也会在 11 月和 12 月工作表中运行?
更“数学化”地讲。我有 n 张工作表。我在工作表 k 中执行宏(k > 0 && k <= n),并且我希望在工作表 < k+1, k+2, ... , n > 中执行相同的宏。
答案1
像这样吗?
RunMacroOnAllSheetsToRight
循环遍历从活动工作表到最后一张工作表的每个工作表- 对于这些工作表,将调用获取工作表索引作为参数的函数
MyFunction
。Msgbox 只是一个示例操作。请根据您的需要进行更改。
Sub RunMacroOnAllSheetsToRight()
For i = ActiveSheet.Index To Sheets.Count
Call MyFunction(i)
Next i
End Sub
Function MyFunction(i)
'Code goes here
MsgBox "I'm currently on sheet " & ThisWorkbook.Sheets(i).Name
End Function