2016-10-10 8 views
0

基本的に私のコードは、Outlookからの着信電子メールの件名がExcelのリスト列(おそらく既存の電子メール)と比較されるように機能します。受信メールが任意のレコードと一致する場合は、Excelに値が表示されます。しかし、Excelのデータにハッシュタグ(#)の値が含まれていると、受信した電子メールがExcelのものと同じではないにもかかわらず、コードで一致したとマークされています。VBAのような機能

コードに問題がありますか、またはLIKE機能の制限はありますか?

+1

「#」は – user3598756

+0

@Wilsonと一致するように 'Like'、「*」は、すべての文字列の略で、あなたの投稿を編集し、あなたのコード(関連セクション)の残りの部分を追加し –

+1

'#は '下さいワイルドカードも同様です。 http://analystcave.com/vba-like-operator/ – Marco

答えて

5

代わりにInStr関数を使用してください。ある文字列の最初の出現位置を別の文字列内で指定する整数を返します。

If InStr(emlSubj , strSubj) > 0 Then 
    Debug.Print strSubj 
End If 
+0

だから私は上記のコードを使用してみましたが、それは私が比較していた2つの科目に一致することができませんでした。たとえば、EmlSubjは休日予約で、StrSubj(Excelファイルのもの)はHoliday Booking#445です。コードは2つの主題に一致することができませんでした。 – Wilson

+0

InStr( "Holiday Booking#445"、 "Holiday Booking")> 0 Then Debug.Print "FOUND" End If –

+0

部分文字列を最初に検索しようとする文字列を指定する必要があります。次に、検索タームを宣言します。 –