? 1=1 はい、そうです。
昨日、ExcelVBAerさんから頂いたコメントを見て、あることを思い出した。
それは、Select Case でLike演算子を使う場合のこと。
docs.microsoft.com
以前職場で、「Trueを付ける」と教わった。↓ こんな感じで。
Select Case True
その時は、Select Case 特有の、特別な使い方だと勝手に思っていた。
しかしその後、解説を聞いてなるほどと思った。
「その後で指定した条件が、正しいかどうかを見てるんです」
例えばイミディエイトウィンドウに訊いてみると、こんな答えが返ってくる。
1=1は正しい。だから、Trueが表示される(?は、Print の意)。
1=2は間違い。だから、Falseが表示される。
従って、例えばこんな感じになる。
Sub Sample() Dim Str As String Str = "桃太郎" Select Case True Case Str = "太郎" MsgBox "違います" Case Str Like "*太郎" MsgBox "似てますね" End Select End Sub
「太郎」と「桃太郎」は違う(False)。でも「桃太郎」は、「なんちゃら太郎」と言える(True)。だからこの場合、「似てますね」がメッセージボックスに表示される。
「金太郎」も「浦島太郎」も、等しく「似てますね」と言ってくれる。
なるほど。と思った次第です。
参考まで。