2016-08-19 5 views
-2

私はVBAにとって非常に新しいです。私はFirstNameとLastNameを持つものとFullと比較する必要があるという要件を持っています。VBAの2つのExcelとfirstNameとlastNameの列を別のExcelのフルネームと比較するにはどうすればよいですか?

私たちはVLookupを使用していますが、毎日このアクティビティを実行する必要があります。

すべての組み合わせに対して結果が必要ですか? Like * FirstnameとLastnameがFullNameとよく一致する場合 * FirstNameはFullNameまたはMiddleパートの最初の部分と一致します(フルネームに中間の名前がある場合) * SecondNameのみがFullNameの中間または最後の部分と一致します。

可能かどうかは、VBAでこれを行う方法がわかりません。どんな助けでも大歓迎です。

おかげで、 Raaz

+0

これはVBAでも可能です。あまりにも難しくありません。私は配列にFullNameを分割し、次にInstr関数などを使って比較を行うことでこれにアプローチします。それ以上はありますが、それは一般的な考えです。 – NuWin

+0

ありがとうございます、はい、私もそう思った、フルネームを分割する必要があります。これは現在、Vルックアップの使用方法です。 – user6732744

答えて

1

あなたはLikeは、複数の文字を表すために*ワイルドカードで動作使用することができます。

Sub Example() 

    Const FirstName = "Elmer" 
    Const LastName = "Fudd" 
    Const FullName = "Elmer J. Fudd" 

    Debug.Print FullName Like FirstName & "*" 'True 
    Debug.Print FullName Like "*" & LastName ' True 
    Debug.Print (FullName Like FirstName & "*") And (FullName Like "*" & LastName) 'True 


End Sub 
+0

名前のリストに対してこのチェックを行っている場合は、constを使用しません。 – NuWin

+0

変数の宣言と代入を短縮するためにconstを使用しました。リスト変数は右側にある必要があります。例えば、あなたが配列 'Cells(1,1)Arr(i)&" * "'のように反復処理している場合、 –

関連する問題