我可以在一个工作表上使用它,但不能用于所有工作表。我想在单元格字符串中找到包含单词“Figure”的任何单元格,并将该单元格的对齐方式设置为左对齐。我在这里做错了什么?
'如果工作表中的任何单元格包含单词“对齐”,则将其对齐
Dim SrchRng As Range, cel As Range
Set SrchRng = Range("$A1:$AZ200")
For Each WS In Worksheets
With WS
For Each cel In SrchRng
If InStr(1, cel.Value, "*Figure*") > 0 Then
cel.HorizontalAlignment = xlHAlignLeft
End If
Next cel
End With
Next WS
答案 0 :(得分:0)
您的代码的主要问题是您只在工作表循环之外设置SrchRng并且没有任何明确的工作表限定,因此它在设置时为当前“活动”工作表设置,并且从未在内部更改环
所以你可能想要使用这段代码:
Dim cel As Range
Dim WS As Worksheet
For Each WS In Worksheets
For Each cel In WS.Range("$A1:$AZ200")
If InStr(1, cel.Value, "Figure") > 0 Then cel.HorizontalAlignment = xlHAlignLeft
Next
Next