- ベストアンサー
エクセルでばらばらのデータを一つにまとめたい。
以下のような表を作成したいのです。 【作成したい表】 A B C 1 商品名 値段 店舗名 2 みかん 30 A店 3 りんご 120 B店 4 ばなな 150 C店 5 らっきょ 200 D店 今、欲しいデータが違うファイルにあります。 【データがある表】 A B 1 商品名 入荷 2 みかん 30 3 オレンジ 100 4 いちご 300 5 らっきょ 200 現段階で、【作成したい表】のB列の値段は空白です。 【作成したい表】のAの列と【データがある表】のA列の文字列を検索し、 データが一致した場合、 【作成したい表】のB列値段の該当する行に【データがある表】のB列値段へ書き込みたいのです。 A列商品名は【作成したい表】と【データがある表】では並び順も違いますし、 商品名がないものもあります。 たとえば、みかんを例にとると、 【データがある表】A:2に「みかん」があります。 【データがある表】B:2に「30」とありますので、 【作成したい表】B:2に「30」と書き込む。 こんな感じです。 エクセル初心者なのですが、急きょ仕事で大量データの移し替え を頼まれました。 おそらくVLOOKUP関数やIF関数を使用するのだと思いますが うまくいきません。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>おそらくVLOOKUP関数やIF関数を使用するのだと思いますがうまくいきません。 ⇒数式をご提示頂いた方がピンポイントでアドバイスできるのですが、不明なので想定で回答します。 (1)両方のエクセルファイルを開く (2)作成したい表のB2に=IF(COUNTIF([データがある表.xls]Sheet1!A:A=VLOOKUP(A2,[データがある表.xls]Sheet1!A:B,2,FALSE),"")として下方向にコピー 数式のシート名はSheet1としていますので調整して下さい。 (3)作成したい表のB列を選択→コピー→形式を選択して貼り付け→値を選択→OK [データがある表.XLS]ファイルとリンク付けがされるのでこれを解消する為、値だけにしてみました。
その他の回答 (1)
- P5Q
- ベストアンサー率40% (86/210)
【作成したい表】のB2セルに =VLOOKUP(A2,データがある表!$A$2:$B$5,2,0) データがある表の 上から最初に見つかったA列のB行の値が入ります。 エラーのときは無表示にしたい場合は、 =IF(ISERROR(VLOOKUP(A2,データがある表!$A$2:$B$5,2,0)),"",VLOOKUP(A2,データがある表!$A$2:$B$5,2,0)) であとはB列に必要なだけ下にコピー 検索対象範囲は必要に応じて設定指定してください。