我的想法是,我想在工作簿中评估vba中给定条件的每个Ws。如果符合标准,我希望它能够做点什么。如果没有达到,我想去下一个ws。我知道这很简单。任何帮助都会非常感激
这是我到目前为止所拥有的。
Sub dataconsol()
Dim Ws As Worksheet
For Each Ws In ThisWorkbook.Worksheets
If ActiveSheet.Range("B9").Value = 1 Then
Range("A1").Value = 2
ElseIf Range("b9").Value <> 1 Then
End If
Next Ws
End Sub
答案 0 :(得分:5)
你的代码很好。将ActiveSheet切换为Ws,就像你的情况一样,ActiveSheet始终是&#39; Sheet1&#39;。
Sub dataconsol()
Dim Ws As Worksheet
For Each Ws In ThisWorkbook.Worksheets
With Ws
If .Range("B9").Value = 1 Then
.Range("A1").Value = 2
ElseIf .Range("b9").Value <> 1 Then
End If
End With
Next Ws
End Sub
或者如果您想使用ActiveSheet:
Sub dataconsol2()
Dim Ws As Worksheet
For Each Ws In ThisWorkbook.Worksheets
Ws.Activate
If Range("B9").Value = 1 Then
Range("A1").Value = 2
ElseIf Range("b9").Value <> 1 Then
End If
Next Ws
End Sub