|
おはようございます。
>文で書いてみたんですが、”あ” しか検索できなくて。。
>”あ”の後に、”あ”or”い”or”う”・・・
>と記入すると型が違いますと出ます。
まず、きちんとプロシジャー名も記述してください。
大勢の方が るかさんの投稿をみています。
例えば、るかさんよりVBAの知識がない方がそのままコピーしても
何だよ!!これだって動かないじゃん ってことになってしまいます。
御自分の抱えている問題を忠実に再現する投稿を心がけてください。
そうすることがきっと、 るかさんVBA上達に役に立ちますから・・・
Sub test()
Dim i As Long
Dim myRng As Range
Set myRng = Range("A1:A5")
For i = 1 To 5
If Range("A" & i).Value = "あ" Or "い" Or "う" Or "え" Then
MsgBox "あいるよ"
Else
MsgBox "あいないよ"
End If
Next
End Sub
このようなコードを実行すると、
If Range("A" & i).Value = "あ" Or "い" Or "う" Or "え" Then
の行で「型が一致しません」というエラーメッセージが出る ということですね?
Sub test1()
Dim i As Long
For i = 1 To 5
If Range("A" & i).Value = "あ" Or _
Range("A" & i).Value = "い" Or _
Range("A" & i).Value = "う" Or _
Range("A" & i).Value = "え" Then
MsgBox Range("A" & i).Address & " には「あ」か「い」か「う」か「え」がいるよ"
Else
MsgBox Range("A" & i).Address & " には「あ」も「い」も「う」も「え」もいないよ"
End If
Next
End Sub
Orは、上記のように"あ"の比較と同じような 式を記述し、Orでつなげなければ
なりません。
私は、エラーの原因だけ言及しました。
>Q&Aサロンはマルチポストを明示的に禁じています。
>http://excelfactory.net/excelboard/excelvba/excel.cgi?mode=all&namber=128199&rev=0
マルチポストに関しては、これは規則ですから仕方ありません。
守ってくださいね!!
リンク先に色々ともっと効率的なコードの投稿がありますから、
最終修正案は、リンク先のコードを参考にしてください。
そして、リンク先で るかさんが学んだ結果(成果)をこちらにも教えてください。
|
|