3

状況:

2 つのシートがあります。最初のシートには従業員名のリストが含まれています。2 番目のシートには、従業員の給与レポートの一部が含まれています。シート 2 で従業員を検索して、従業員の給与データをシート 2 からシート 1 にプルする必要があります。これを複雑にしているのは、シート 2 のレポートに従業員の変更、給与、および一意の ID が含まれていないことです。

列 A に入力しようとしています。下流のレポートに影響するため、このシートを完全に変更することはできません。

first name以前は、、、だった列 B を分割しましmiddle initial (if any)last name。名前の約 10% は姓が異なる可能性があることに注意してください。たとえば、シート 1 には Tara Feather という名前が含まれていますが、2 番目のレポートでは Tara Bird という旧姓が使用されています。

これまでの試み:

私は Excel を初めて使用し、学習中VLOOKUPです。私の最初の試みは、シート 1 と 2 の姓の列に基づいてデータを取得し、データを入力することでした。残念ながら、それはエントリの 90% で機能しましたが、最後の 10% には間違った値があり、修正するための監査は手動で入力するよりも時間がかかりました。

考えられるアイデア:

次に考えたのは、Ifステートメントとを組み合わせて、一致し、一致VLOOKUPした場合は、実行して値を取得するか、「エラー」を入力することでした。last namefirst nameVLOOKUP

この新しい考え方では、私が現在マクロの領域にいるのか、それとも役立つ機能の組み合わせがあるのか​​ わかりません。理想的には、100% の精度でより多くのことを実行できるほど優れています。ただし、シート 2 で入力した名前を強調表示できる場合は、強調表示されていない名前をいつでも手動で入力できるため、時間を節約できます。

あなたの考えと方向性は何ですか?

4

1 に答える 1

2

100%の精度が必要ですが、2つのシートで誰かが異なる名前を持っている場合、それは機能しません。

したがって、その90%を正しく取得するには、次のようにします。

2番目のシートで、この数式をG2に配置し、名前と同じ数の行にコピーします。

=B2&D2

この数式をH2に入れて、コピーします

=F2

最初のシートで、この数式をA2に入れて、コピーします

 =VLOOKUP(D2&C2,'second sheet'G:H,2,false)

一致する名と名前が見つからない行には、#N/Aが含まれます。

2番目のシートを永続的に変更できると仮定すると、数式が機能するように正しい名前を入れることができます。同じ名前の人が2人いる場合は、数式にミドルネームを入れることもできます。

于 2011-10-20T15:55:14.397 に答える