我有一個工作簿與許多工作表,並進入一些我需要輸入一個值,如果前面的單元格匹配給定的字符串。Excel迭代通過工作表
我的代碼適用於我需要的工作表,但當它到達一些不需要的工作表(其中也包含數據)時出錯。
調試器突出顯示的行是For Each r In Intersect (ActiveSheet.UsedRange, Range("F:F")
我是一個VBA/Excel腳本編程的新手。對不起,如果這是非常明顯的,但我搜索了網站,找不到合適的答案,或者我只是沒有認出它。
Sub AllOnePool()
Dim myStr As String
Dim myPool As String
Dim sh As Worksheet
Dim xlCalc As XlCalculation
myStr = InputBox(Prompt:="Input the Target Serial Number: e.g. 93127")
myPool = InputBox(Prompt:="Input the Pool to Use: ")
For Each sh In ActiveWorkbook.Worksheets
sh.Activate
For Each r In Intersect(ActiveSheet.UsedRange, Range("F:F"))
If r.Text = myStr Then
r.Offset(0, 1) = myPool
End If
Next r
Next sh
End Sub
真的切,但除非序列號始終是93127(這將提高另一組問題),那麼你的「即」應該是「例如」 http://www.quickanddirtytips.com/education/grammar/ie-versus-eg –