dポイントプレゼントキャンペーン実施中!

以下のコードで部分一致(*)をさせようとしたのですが、
コンパイルエラーのメッセージが出てしまいます。
どうしたらいいのでしょうか。
よろしくお願いします。

test = Cells(2, 3).Value
test2 = Cells(1, 3).Value
If * & test & * = test2 then

A 回答 (4件)

#1です。



>If test Like "*" & test2 & "*" then

↓の方が適切ですね。失礼しました。

If test2 Like "*" & test & "*" then
    • good
    • 0
この回答へのお礼

ありがとうございました。
解決しました。

お礼日時:2009/01/14 09:36

やりたいことはみんなの言うとおり文字列リテラルの書き方とその連結、like演算子の使用なんだろうけど・・・



個人的にはその路線放置でhana-hana3さんの方法に賛成。
Option Explicit

Sub hoge()
Dim test As String
Dim test2 As String
test = "["
test2 = "[["
'実行時エラー:パターン文字列が不正です
If test2 Like "*" & test & "*" Then
End If
End Sub

とか考慮するのが面倒くさい
    • good
    • 0
この回答へのお礼

ありがとうございました。
解決しました。

お礼日時:2009/01/14 09:36

if文ではそのような使い方はできません。



If InStr(test , test2) > 0 Then

InStr関数
http://officetanaka.net/excel/vba/tips/tips33.htm
http://officetanaka.net/excel/vba/function/InStr …
    • good
    • 0
この回答へのお礼

ありがとうございました。
解決しました。

お礼日時:2009/01/14 09:36

Like演算子と組み合わせます。



If test Like "*" & test2 & "*" then
    • good
    • 0
この回答へのお礼

ありがとうございました。
解決しました。

お礼日時:2009/01/14 09:35

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!