[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『IF関数とVLOOLUP関数の応用』(ゆうき)
今回初めてご質問させて頂きます。
<シート1> 青森産 りんご @100円 みかん @80円 長野産 りんご @120円 みかん @90円
<シート2> 日付 商品名 個数 単価 7/1 青森産りんご 10 ? 7/2 長野産みかん 8 ? 7/3 青森産みかん 20 ? 7/4 長野産りんご 7 ?
このときの単価を関数で何とか出したいのですが、 何かいい方法はありませんか? 宜しく御願いします。
例えば、シート1の単価を セルに数値のみ入力する場合 作業列を作って [A] [B] [C] [D] [E] [F] [1] 作業列 産地 商品 単価 [2] 青森産りんご 青森産 りんご @ 100 円 [3] 青森産みかん みかん @ 80 円 [4] 長野産りんご 長野産 りんご @ 120 円 [5] 長野産みかん みかん @ 90 円
検索したいシート2の商品名と同じ言葉を作っておけば VLOOKUP関数が簡単に使えると思いますよ。 A2セルに =IF(B2="",B1&C2,B2&C2) 下にコピー で、作れます。
(HANA)
HANAさんの仰る通り、データのあるシートの変更や作業列を作れば簡単なことだとは思いますb でも一応、挑戦してみました。 上手くいくかどうか、検証不足かもしれませんが、、、 Sheet2 D2 =VLOOKUP(MID(B2,FIND("産",B2)+1,LEN(B2)), INDIRECT("Sheet1!B"&MATCH(LEFT(B2,FIND("産",B2)),Sheet1!$A$1:$A$5,)&":C"&COUNTA(Sheet1!B:B)),2,) 以下コピー (キリキ)(〃⌒o⌒)b
こんばんは〜♪
ホントはシート1のA列の産地は、なるべくならすべて埋めた方が 集計には向いているのですが。。。 式も易しくなりますし。。。
こんな表の場合です
Sheet1↓ ┌─┬────┬────┬────┐ │ │ A │ B │ C │ ├─┼────┼────┼────┤ │ 1│産地 │商品名 │単価 │ ├─┼────┼────┼────┤ │ 2│青森産 │りんご │ 100│ ├─┼────┼────┼────┤ │ 3│ │みかん │ 200│ ├─┼────┼────┼────┤ │ 4│ │ぶどう │ 300│ ├─┼────┼────┼────┤ │ 5│長野産 │みかん │ 400│ ├─┼────┼────┼────┤ │ 6│ │りんご │ 500│ └─┴────┴────┴────┘
別シート ↓
┌─┬────┬──────┬────┬────┐ │ │ A │ B │ C │ D │ ├─┼────┼──────┼────┼────┤ │ 1│日付 │商品名 │個数 │単価 │ ├─┼────┼──────┼────┼────┤ │ 2│ 7/1│青森産りんご│ 10│ 100│ ├─┼────┼──────┼────┼────┤ │ 3│ 7/2│青森産みかん│ 8│ 200│ ├─┼────┼──────┼────┼────┤ │ 4│ 7/3│長野産りんご│ 20│ 500│ ├─┼────┼──────┼────┼────┤ │ 5│ 7/4│青森産みかん│ 7│ 200│ ├─┼────┼──────┼────┼────┤ │ 6│ 7/5│青森産ぶどう│ 5│ 300│ ├─┼────┼──────┼────┼────┤ │ 7│ │ │ │ │ └─┴────┴──────┴────┴────┘
D2セルへ =INDEX(Sheet1!C:C,MATCH(RIGHT(B2,LEN(B2)-FIND("産",B2)), INDEX(Sheet1!B:B,MATCH(LEFT(B2,FIND("産",B2)),Sheet1!A:A,0)): INDEX(Sheet1!B:B,COUNTA(Sheet1!B:B)),0)+MATCH(LEFT(B2,FIND("産",B2)), Sheet1!A:A,0)-1)
下にコピーします。。。
エラー処理はしていませんので。。。
★追伸で〜す。。。 別シートは、以下の様なレイアウトにされた方が 良いと思います。。。 式も易しくなります。。。
┌─┬────┬──────┬──────┬────┬────┐ │ │ A │ B │ C │ D │ E │ ├─┼────┼──────┼──────┼────┼────┤ │ 1│日付 │産地 │商品名 │個数 │単価 │ ├─┼────┼──────┼──────┼────┼────┤ │ 2│ 7/1│青森産 │りんご │ 10│ 100│ ├─┼────┼──────┼──────┼────┼────┤ │ 3│ 7/2│青森産 │みかん │ 8│ 200│ ├─┼────┼──────┼──────┼────┼────┤ │ 4│ 7/3│長野産 │りんご │ 20│ 500│ ├─┼────┼──────┼──────┼────┼────┤ │ 5│ 7/4│青森産 │みかん │ 7│ 200│ ├─┼────┼──────┼──────┼────┼────┤ │ 6│ 7/5│青森産 │ぶどう │ 5│ 300│ ├─┼────┼──────┼──────┼────┼────┤ │ 7│ │ │ │ │ │ └─┴────┴──────┴──────┴────┴────┘
★この場合式は E2セルへ =INDEX(Sheet1!C:C,MATCH(C2,INDEX(Sheet1!B:B,MATCH(B2,Sheet1!A:A,0)): INDEX(Sheet1!B:B,COUNTA(Sheet1!B:B)),0)+MATCH(B2,Sheet1!A:A,0)-1)
下にコピーします。。。
ご参考にどうぞ。。。
。。。Ms.Rin〜♪♪
HANAさん、大変分かりやすい説明ありがとうございます。 キリキさん、ご親切な回答ありがとうございます。 最後に、Rinさん、ご丁寧な回答で大変参考になりました。 みなさん、本当にありがとうございます。 今回が初投稿でしたが、みなさんいいひとばかりなので、 また分からない点があれば、ご質問させて頂きたいと思います。
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.