2016-09-27 19 views
0

次の問題に関する助けを求めます: 2枚のブックがあります。シート2には2つのフレーズリストがあり、シート1にはいくつかのデータがあります。シート1のデータをチェックするマクロを作成し、シート2のリストに表示されていないフレーズが見つかった場合は、ポップアップメッセージを表示します。さらに、シート1にはコンマで区切られたフレーズが含まれます。それもチェックすることは可能ですか? (スクリーンショットを参照してください) 本当にシンプルですが、私は次のことを考え出しましたが、答えはより複雑です。 ご協力いただければ幸いです! ありがとうございます!Excel VBA - リストとポップアップメッセージで検索

Sheet 1 with data

Sheet 2 with lists of phrases

マイコード:

Sub check() 
For i = 2 To 2 

If Cells(i, "A") <> Worksheets("Sheet2").Cells(i, "B") Then 
MsgBox "Phrase 1 does not match" 
    End If 

For j = 2 To 2 
    If Cells(j, "B") <> Worksheets("Sheet2").Cells(j, "C") Then 
    MsgBox "Phrase 2 does not match" 

End If 
Next j 
Next i 
End Sub 
+0

のようになります。なぜあなたは一つだけを通じて "ループ" にループを作成します細胞? (2 to 2) – vacip

+0

@vacipおそらく、opが何をしようとしているかの小さな例を提供するだけでしょうか?いずれにしても、値の完全一致ではなく、セル内のデータを検索しようとしているので、 'InStr'を使ってテキストの位置を特定する方が良いでしょう – Dave

答えて

0

VBAコードは、この

For all cells in column 'Phase 1' 
Use the SPLIT() function to split the comma separated values 
and store them into a list of distinct values 

    For all distinct values in the list 
    Use the VLOOKUP function on the 'Phrase list 1' column in sheet2, 
    searching for the current value 

    If vlookup returns a valid result then 
     do nothing 
    else 
     pop up message 
    end if 

    end loop of distinct values 

end loop of cells in column 'Phase 1' 
関連する問題