|
▼ichinose さん:
>おはようございます。
>
>>文で書いてみたんですが、”あ” しか検索できなくて。。
>>”あ”の後に、”あ”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
>
>マルチポストに関しては、これは規則ですから仕方ありません。
>守ってくださいね!!
>
>リンク先に色々ともっと効率的なコードの投稿がありますから、
>最終修正案は、リンク先のコードを参考にしてください。
>
>そして、リンク先で るかさんが学んだ結果(成果)をこちらにも教えてください。
ichinoseさん!ありがとうございます☆
ichinoseさんが書いてくれたのはとっても分かりやすくて私レベルでは
なるほど!って感じでした。本当にありがとうございます!
マルチポスト・・知らなかったです(_ _lll)
早く解決したくって。。
ごめんなさい。
ichinoseさんが同じ型どうしにしたらいいって教えてくれて、やっとエラーなくできました!
が・・
この文じゃあ私がやりたいものにまったくならなくて。。
それでichinoseさんが一番最初に書いてくれたエクセル関数を解読しようと
頑張ったんですが。。エクセル関数はまったく知識ないんです(´・ω・|||)
=COUNT(INDEX(MATCH(CHAR(64+ROW($A$1:$A$4)),$A:$A,0),,))<>4
COUNT(範囲)
INDEX(配列,行番号,列番号)
MATCH(検査値,検査範囲,照合の型)
↑ここまでは一個一個調べてなんとなく。。分かったんですが、
CHAR(64+ROW($A$1:$A$4) ←???これがわからなくって。。
調べたんですがJIS番号?とかいうのに変換しているんでしょうか。。
私が検索したいと思ってのは文字列なんです。
あ とか い とかなんです。。
よかったらまた教えてください(´;д;`)
|
|