エクセルで同じ値を探して隣の数値をコピーする方法

このQ&Aのポイント
  • エクセルでSheet2のA列のデータと完全一致するデータ(名前)をSheet1のA列から探して、同じ名前があれば、その隣のB列にある数値をSheet2のB列に貼り付ける方法を教えてください。
  • エクセルのSheet1とSheet2のデータを比較し、同じ名前があれば隣の数値をコピーしてSheet2のB列に貼り付ける方法を教えてください。
  • エクセルで指定したデータと一致する名前を探し、隣の数値を別のシートにコピーする方法を教えてください。
回答を見る
  • ベストアンサー

エクセル 同じ値を探して隣の数値をコピーする

エクセルで以下の作業を簡単にする方法を教えて下さい。 Sheet1の1行目には見出しがあり、A列とB列の2行目から下にデータが入っています。(約200行) A列     B列 田中    13 山本     8 谷口    11 鈴木    6 佐々木    9 奥村     15 ・ ・ ・ Sheet2のA列1行目から下には別のデータが入っています。(約600行) A列 太田川 山村 田中 多賀先 鈴木 奥村 幸田 ・ ・ ・ Sheet2のA列のデータと完全一致するデータ(名前)をSheet1のA列から探して、同じ名前があれば、その隣のB列にある数値をSheet2のB列に貼り付ける。 見つからない場合はSheet2のB列は空欄のままです。 Sheet2 A列      B列 太田川      山村 田中    13 多賀先 鈴木     6 奥村    15 幸田 ・ ・ ・

質問者が選んだベストアンサー

  • ベストアンサー
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

シート2のB2セルには次の式を入力して下方にドラッグコピーします。 =IF(COUNTIF(Sheet1!A:A,A2)=0,"",VLOOKUP(A2,Sheet1!A:B,2,FALSE))

fightman11
質問者

お礼

ありがとうございました。 思い通りに出来ました。

その他の回答 (1)

  • kybo
  • ベストアンサー率53% (349/647)
回答No.2

Sheet2のB1のセルに以下の様に入れ、下へコピーでいいです。 =IF(COUNTIF(Sheet1!$A$1:$A$200,A1)=0,"",VLOOKUP(A1,Sheet1!$A$1:$B$200,2,FALSE)) Excel2007以降であれば以下の様にもできます。 =IFERROR(VLOOKUP(A1,Sheet1!$A$1:$B$200,2,FALSE),"")

fightman11
質問者

お礼

ありがとうございました。 思い通りに出来ました。

関連するQ&A

  • Excel 重複値を検索し全て表示させる関数

    Sheet1の1行目には見出しがあり、A列とB列の2行目から下にデータが入っています。(約200行) A列     B列 田中    13 山本     8 谷口    11 鈴木    6 田中    10 佐々木    9 奥村     15 佐々木   15 佐々木   20 ・ ・ ・ Sheet2のA列1行目から下には別のデータが入っています。(約600行) A列 太田川 山村 田中 多賀先 鈴木 奥村 幸田 ・ ・ ・ Sheet2のA列のデータと完全一致するデータ(名前)をSheet1のA列から探して、同じ名前があれば、その隣のB列にある数値をSheet2のB列に貼り付ける(B列が重複の場合、下に張り付ける。但し、A列の名前は1行目は表示、2行目からは表示、空欄でも構いません)。 見つからない場合はSheet2のB列は空欄のままです。 Sheet2 A列      B列 太田川      山村 田中    13        10 多賀先 鈴木     6 奥村    15 佐々木   9       15       20 幸田 ・ ・ ・ 何卒、ご指導の程宜しくお願い致します。

  • エクセルでこのような事ができますか?

    エクセルでマクロとか使わずに簡単に以下の作業ができる方法がありますか?      A      B 1   田中 2   山本 3   中村 4   岡田 5   鈴木      ↓   A列にずっと1000人ぐらいの名前がある。   このシートをもとに下のような1から6の番号をB列につけたシートを   作りたいのですが・・・      A      B 1   田中     1 2   田中     2 3   田中     3 4   田中     4 5   田中     5 6   田中     6 7   山本     1 8   山本     2 9   山本     3 10  山本     4 11  山本     5 12  山本     6 13  中村     1 14  中村     2      ↓    6000行まで入ることになります。

  • エクセルで関数を使って結果の値から任意の数値を引く

    シート1のA列に性別、B列に料金入力欄があり、シート2のA列に料金、1行目に男性、2行目に女性のデータがある場合、シート2の料金をシート1のB列に反映させる際に女性の料金のみ300を引いた値を返すとしたらどのような関数を使えばよいでしょうか。 よろしくお願い致します。

  • ExcelのSUMIF関数について質問です

    A列 │B列 │C列│ ----十---十----十 田中│ 男│177 │ 鈴木│ 男│169 │ 吉田│ 女│162 │ 田中│ 女│161 │ 佐藤│ 女│164 │ 田中│ 男│174 │ 鈴木│ 女│166 │ 上記のようなデータがsheet1にあって、このうち A列が”田中”で、かつB列が”男”に該当する C列のデータの合計をsheet2で計算したいのですが これはどのようにすればいいのでしょうか。 下記のように記述するところまではやったのですが、 これに「なおかつsheet1のB列がsheet2のB3(男)に一致する場合」 という検索条件を付け加える方法が分かりません。 (↓Sheet2のC3セル) =SUMIF(Sheet1!A:A,Sheet2!A3,Sheet1!C:C) (sheet2のA3には”田中”、B3には”男”と入力してあり、 計算結果をC3に出力したいと思っています。) OSはWindows2000、エクセルはEXCEL2000を使用しています。 よろしくお願いします。

  • エクセル

    エクセルでのカウント方法の関数がわかりません。 A列 B列 田中 福岡 田中 福岡 田中 福岡 鈴木 佐賀 鈴木 佐賀 田中 長崎 田中 長崎 このようなデータで、A列の条件でB列の種類を返すにはどのような方法がありますでしょうか? 田中2 鈴木1 わかりにくくて申しわけないですけど、よろしくお願い致します。

  • エクセルで条件に一致したセルの隣のセルを取得したい

    下のような「得点」という名前のシートがあります。 (「田中」のセルがA1です。)  [ 田中 ][ 10 ][ 200 ]  [ 山田 ][ 21 ][ 150 ]  [ 佐藤 ][ 76 ][ 250 ]  [ 鈴木 ][ 53 ][ 350 ] 別のシートのA1セルに、「佐藤」と入力すると、  [ 佐藤 ] 「得点」シートから「佐藤」の列を見つけて、B1、C1に  [ 佐藤 ][ 76 ][ 250 ] のように表示させたいのですが、B1、C1にはどのような式を書けば良いのでしょうか。 「得点」シートでは氏名が重複する事はありません。 IF文を使うと思うのですが、いまいち良く分かりませんでした。 よろしくおねがい致します。

  • エクセルSheet1,2を使っての行ごとでの値の返し方

    Sheet1にデータを行ごとに入れていきます。 Sheet2にSheet1のデータを行ごとに返します。 例えば下記のようなデータがSheet1にあります。 行/列  A     B     C    D     登録番号 申込み日  氏名   住所  1  h1234  15年2月  山田太郎 東京都品川区   2  k0022  14年8月  田中次郎 千葉県浦安市   3  m3651  15年1月  鈴木三郎 埼玉県川口市   4  g7890  13年6月  佐藤四郎 神奈川県横浜市 Sheet2のA1にSheet1の行3のデータを返すため3と入れます。登録番号を入れたいので、次のような関数を入れてみましたがうまく出来ませんでした。 =IF(ISNUMBER(A1),INDIRECT(Sheet1!A3&A1),"") 何がいけないのかわかりませんでした。 それに、出来れば登録番号の数字(全て4桁です)返したいのですが、さらに、MIDを使えばよいのですか?説明が十分かどうかわかりませんがアドバイス宜しくお願い致します!

  • エクセルのデータのコピー(シート間)

    エクセルのデータのコピー(シート間) シート1の10行目には,A列からCZ列の各列ごとに1行目から9行目までの数値の加算式が入力されています(A10には「=SUM(A1:A9)」,B10には「=SUM(B1:B9)」,・・・CZ10には「=SUM(CZ1:CZ9)」)。 これらの加算式のデータ(A10,B10,・・・CZ10)を,シート2のA列の1行目から78行目まで縦にコピーしたいのですが,良い方法を教えて下さい。 宜しくお願いします。

  • エクセル あるコードを含む行ごと、他のシートに反映させたい。

    こんばんは。 エクセルで以下のような表を作成しています。 [シート1]   A列   B列   C列  D列 1 コード  担当   日付  ・・・ --------------------------------------- 2 S679   山田   9/1  ・・・ 3 S679   田中   9/2  ・・・ 4 S680   山田   9/2  ・・・ 5 S679   鈴木   9/4  ・・・ ・ ・ ・ また、[S679]・[S680]というシートを作成し、 [シート1]のA列にコードを入力するごとに、該当のシートに行ごと データを反映させる方法はありますでしょうか。 上の例でいくと、 [S679]シートには   A列   B列   C列  D列 1 コード  担当   日付  ・・・ --------------------------------------- 2 S679   山田   9/1  ・・・ 3 S679   田中   9/2  ・・・ 5 S679   鈴木   9/4  ・・・ というように。 [シート1]にデータを入力するごとに、 該当コードの列のデータを[S679]・[S680]シートに反映させる方法があれば、 どうぞご教示をお願いします。 文中の至らぬ点はご指摘いただければ都度補足いたしますので、 よろしくお願いいたします。

  • Excelで値をコピーすると、隣の列にある数式が変更されてしまう

    Excel2007で、2003以前でなるのかは試していないのですが… 値を切り取って違うところに貼り付けすると、隣の列の計算式の参照先が変化してしまい困っています。 分かり辛いですが… sheet1とsheet2があります。 sheet1にはデータが入っており、sheet2でsheet1のデータを集計しています。 sheet1には C列に名前、D列にデータ、E列にデータが入ってます。 sheet2には B列に名前が列挙してあります。sheet1内の検索用です。 そしてC列に =SUMIF(sheet1!C$1:C$150, sheet2!$B1, sheet1!E$1:E$150)-SUMIF(sheet1!C$1:C$150, sheet2!$B1, sheet1!D$1:D$150) という計算式が入っています。 sheet1のC列の中で、名前(sheet2!$B1)が一致するE列の合計値からD列の合計値を引いた結果を集計しています。 そして、人数分この式がコピーされています。 他には見た目的な装飾以外には特に何も書かれていません。 ここで、sheet2の検索用の名前が減ったり、順番が移動したので、切り取って違う位置(同じ列です)に張り付けました。 例えば、5人分の名前を切り取って一つ上の行に張り付けします。 思いとしては、となりの計算式は当然変化せず再計算されて、計算結果も上の行に一つ分ずれる予定だったのですが、結果としては何故か数式が変化して、(sheet2!$B)の部分が移動した名前列を追いかけるように1個分変化してしまいます。(移動した5個分だけが数式変化します) 当然名前と計算結果の行がずれてしまい、具合が悪いです。 $で絶対参照にすると、数式をコピーした際に行移動した分が変化しないので、結局数式を1個1個変更することになるので面倒です。 かと言って、R1C1形式で相対参照にすれば解決する可能性もありますが(試してません)、多分R1C1形式に慣れて無い人が使えば混乱してしまう気がするので、なるべく避けたいです。 コピーして貼り付けする分には数式は変化しないので、とりあえずはそれで対処してます。 (コピーして貼り付けした後に不要な名前を削除) どなたか、解決方法か、こういう仕様である利点、もしくは自分の間違いを教えていただけないでしょうか。

専門家に質問してみよう