[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『sheet1とsheet2を比べたい』(なみへい)
1行目に「出荷日」「品名」「得意先」「数量」というデータを sheet1とsheet2と比べて数量が変わっていたり sheet1に記載されていない得意先がsheet2にあったりした時に 数量が変わっていたらその誤差を、記載されていなかったら 「データ無し」とsheet2に表示させるにはどうしたら良いですか?
いろいろやってみたのですが、お知恵を借りたいです。
「=出荷日&"_"&品名&"_"&得意先」というKey列を両シートに作成し、 Sheet2側でMATCH関数による存在確認と該当行番号の取得。
IF関数で、返値が#N/Aだったら 「データなし」を 返値が数字だったら INDEX関数でSheet1の該当行から金額を呼び出して差額を (Sheet1に重複がある場合はSUMIF関数か) という分岐をする。
って感じで如何ですか?
(白茶)
ご説明に無い部分が色々発覚しそうですが。。。
基本的には白茶さんと同じです。
キーになる列を作って それらでマッチングさせていく方法が 使えるかもしれません。
★が付いている列に数式を入れます。
Sheet1 [A] [B] [C] [D] [E] ★ [1] 出荷日 品名 得意先 数量 KEY [2] 12月2日 リンゴ A 10 40149_リンゴ_A [3] 12月2日 みかん B 20 40149_みかん_B [4] 12月4日 リンゴ B 10 40151_リンゴ_B [5] 12月4日 みかん B 20 40151_みかん_B [6] 12月9日 リンゴ A 30 40156_リンゴ_A [7] 12月11日 みかん B 20 40158_みかん_B [8] ↑E2に=IF(A2="","",A2&"_"&B2&"_"&C2)
Sheet2 [A] [B] [C] [D] [E] ★ [F] ★ [G] ★ [1] 出荷日 品名 得意先 数量 確認 sh1数 KEY [2] 12月2日 リンゴ A 10 10 40149_リンゴ_A [3] 12月2日 みかん B 20 20 40149_みかん_B [4] 12月4日 リンゴ A 10 なし 0 40151_リンゴ_A [5] 12月4日 みかん B 20 20 40151_みかん_B [6] 12月9日 リンゴ A 10 20 30 40156_リンゴ_A [7] 12月11日 みかん B 20 20 40158_みかん_B [8] ↑ ↑F2に=SUMIF(Sheet1!$E$1:$E$20,G2,Sheet1!$D$1:$D$20) | ↑G2に=IF(A2="","",A2&"_"&B2&"_"&C2) |E2に=IF(A2="","",IF(F2=0,"なし",IF(D2=F2,"",F2-D2)))
(HANA)
sh1数やKEYの意味がよく分りません... 基本的にHANAさんが作成した表みたいな感じで E列に表示したかったのですが...
sheet1の列にそれぞれ専用のコードを入れるという事ですか?
(なみへい)
4つの列に、数式を入れてください。 見出しが「KEY」と成っている列は 5桁の数字で始まっていますが、これは =IF(A2="","",A2&"_"&B2&"_"&C2) 等の数式を入れただけで、勝手にこの様に成ると思います。
Sheet1のE列に結果を表示するために Sheet1のE列と、Sheet2のF列,G列の計算結果が必要に成ります。 (細かいことを言えば、Sheet1のE列以外は Sheet2のE列の式内で済ませても良い事かもしれませんが。)
Sheet2のF列の式は、それぞれの行が対応するSheet1の数量を返します。 その為に、Sheet1のE列とSheet2のG列に入れた式の結果を使用ています。
求められたSheet2のF列の結果を参照して Sheet2のE列に、最終結果を表示します。
(HANA)
なんとかうまく出来ました。 有難うございました。
(なみへい)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.