我有一个子程序遍历每个工作表并检查标志。
如果该标志被引发,我希望它运行另一个子。标志检查有效,但被调用的另一个子程序在主页上运行。
代码:
Sub update()
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
If (ws.Cells(1, 5) = 1) Then
Call update2(ws)
End If
Next
End Sub
Sub update2(ws As Worksheet)
ws.clear <----does not work
End Sub
sub dothis()
cells(1,6) = "hallo"
end sub
我该如何让它发挥作用?
答案 0 :(得分:1)
Sub update2(ws As Worksheet)
ws.Cells.Clear
End Sub
答案 1 :(得分:1)
您需要使用公共变量(通常不推荐)或将必要的参数发送到需要它们的过程。
Sub update2(ws As Worksheet)
Call dothis(ws)
End Sub
sub dothis(ws as Worksheet)
ws.cells(1,6) = "hallo"
end sub