|
▼aoba さん:
既にUO3さんが解説してくださっていますので、私はHelpに基づいて
ちょっとだけ。
先ず、機能としては、以下
2 つの文字列の比較を行います。
書式は
/////////////以下Helpより/////////////
構文
result = string Like pattern
指定項目 内容
result 必ず指定します。任意の数値変数を指定します。
string 必ず指定します。任意の文字列式を指定します。
pattern 必ず指定します。「解説」に示すパターン マッチング規則に従った任意の文字列式を指定します。
/////////////////////////////////////
です。
従って
> If mj1 Like mj4 Then
は既に、構文を無視している事は明らかですね。
では何故エラーにならないか?
それはVBが変に親切で勝手に型変換をしているからです。
慣れてくると小さな親切大きなお世話ってな感じになります。
なので、VBの暗黙の型変換を使用しない利用方法を取ることを心掛けると
>もし、同じであれば 使い分けはどのようにしているのでしょうか
という心配は不要になります。
なので本来は
If mj1 = mj4 Then
又は
If cstr(mj1) Like cstr(mj4) Then 'こっちは本来すべきじゃないですが例として。
とすべきなんです。
なので、私はhelpの書式通りに書く事を心掛けています。
「暗黙の型変換」で検索すると判りやすい解説を井上さんが公開してくれていました。
ht tp://www.asahi-net.or.jp/~ef2o-inue/vba_k/sub04_050_08.html
まぁ取り敢えずわからなくてもHelpを精読する事は必須と思って下さい。
Helpの判らない所は今回のようにこういう場所で質問できますから。
少なくともその手の質問は、如何にも初心者をひけらかしてソース書いて
欲しい風の内容の質問(とは言えませんし、私はres付けませんけど)よりは
多くの親切なアドバイスが頂ける事は間違いないです。
|
|