0

2 つのスプレッドシートがあるとします。

スプレッドシートの 1 つに、次のような表があります。

  **Sheet 1**
  A        B        C        D
1 Name     Age      Rank     Number

2 George   22       Master   12

3 Paul     21       Acolyte  22

4 Jimmy    32       Horse    33
 
5 Agnor    12       Cheetah  90

他のスプレッドシートは次のようになります。

  **Sheet 2**
  A        B        C        D
1 Name     Age      Rank     Number

2 George   

3 Paul     21                22

4 Agnor    

Ages をシート 1 からシート 2 にコピーしたいので、George、Paul、および Agnor の年齢をコピーし、Jimmy を無視します。既存の値に基づいてデータをコピーするには、どの関数を使用すればよいですか?

次のようなものがありますか:

foreach VAL in Sheet1
if(Sheet1.Name.EqualsIgnoreCase(Sheet2.Name))
{
    Sheet2.Age = Sheet1.Age;
}

これを調べたところ、多くの人が VLookup を使用するように言っていますが、それがどのように適用されるのかわかりません。

編集

ここで同様の解決済みの質問を見つけました(どのように見逃したのかわかりません):ワークシート間のデータの比較とコピー

ただし、これを実装する方法についてはまだ少し不安定です (私は Excel 2007 を使用しています)。

4

1 に答える 1

1

vlookup が最も簡単な方法です。
関数を説明するための参照として、シート 2 のセル B2 を使用します。最初のパラメーターは、ルックアップに使用しているデータです。シートの周りに数式をコピー
=VLOOKUP(A2,Sheet1!$A$2:$D$5,2,FALSE)
する場合は、それを変更することができます 。2 番目のパラメーターは、データは、Excel が最初のパラメーターで参照した値を見つける必要があるということです - ドル記号を使用してください。データは移動する傾向がありません 3 番目のパラメーターは、返す情報を Excel に指示します - 2 は、2 番目のデータを提供することを意味します 最後のパラメーターは、近似一致 (完全一致) を 使用できるかどうかを Excel に指示します$A2


FALSE

次に、Excel に従って、何が返されるかを確認します.....

最初にGeorge、データを検索します (4 番目のパラメーターと完全に一致する必要があることを認識しています)
。次に、行を見つけてGeorge -- 22 -- Master -- 12、関数に 2 番目の値を与えます (22この場合)。

于 2012-05-29T19:32:53.023 に答える