• ベストアンサー

EXCEL 見積書作成

EXCEL2010 で見積書を作成しています。 得意先毎に見積内容や金額が違うので、別シートにてデータベースを作って、その内容を得意先コードを参照して反映させたいと考えています。 見積書とデータベースの画像を添付しました。 赤で囲っている部分のコードをキーにして、データベースの内容(青で囲っている箇所)を反映させたいです。見積書にコードは手打ちで入力いたします。 データベースの列のレイアウトは、見積書の並びに合わせています。 どのようにすれば、実現出来ますでしょうか? ご教授を何卒よろしくお願いします。

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

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.2

No.1です。 >Sheet1のB2セルに顧客コードを入力しましたら、商品コード(A5)を入力しなくてもデータベースから内容を引っ張ってくるものです。 とありましたので・・・ もう一度画像をアップしてみます。 右側がSheet2にしています。 データ量が極端に多い場合も考慮して、作業列を設けています。 作業列F2セルに =IF(OR(COUNTBLANK(A2:E2),A2<>Sheet3!$B$2),"",ROW()) という数式を入れオートフィルでずぃ~~~!っと下へコピーしておきます。 Sheet1のA5セルに =IFERROR(INDEX(Sheet2!B:B,SMALL(Sheet2!$F:$F,ROW(A1))),"") という数式を入れ、列・行方向にオートフィルでコピー! これで画像のような感じになります。 ※ Sheet2のデータは顧客ごとに並び替えをする必要はありません。 尚、データ量が少ない場合は作業列は必要なく Sheet1のA5セルに =IFERROR(IF($B$2="","",INDEX(Sheet2!B$1:B$1000,SMALL(IF(Sheet2!$A$1:$A$1000=$B$2,ROW($A$1:$A$1000)),ROW(A1)))),"") とりあえず1000行まで対応できる数式です。 これは配列数式になってしまいますので、Shift+Ctrl+Enterで確定! この画面からコピー&ペーストする場合はA5セルに貼り付け後、数式バー内で一度クリック! 編集可能になりますので、Shift+Ctrlキーを押しながらEnterキーで確定! 数式の前後に{ }マークが入り配列数式になります。 これをオートフィルでコピーでも同様の結果になります。 今度はお役に立ちますかね?m(_ _)m

icf06128
質問者

お礼

「Tom04」様。 度々ご教示下さり誠に有り難うございます。 お教えくださった方法で、作成しようとしている見積書に当てはめてみましたが、どうも上手くいきません。 しかしながら、お送りくださった画像の通りにフォーム&データを作成すると、こちらでも、おっしゃる通りに正しく表示されます。 数式の内容が全く理解できてないから、無理もないです。 折角、お教えいただいたのに申し訳ありません。 もう少し格闘してみます。

その他の回答 (1)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.1

こんにちは! 画像が小さくて詳細が判断できないので、やり方だけ・・・ ↓の画像で下側がSheet2でデータの表を作成しておきます。 そして1列作業用の列を設けています。 Sheet2の作業列F2セルに =A2&"_"&B2 という数式を入れフィルハンドルでダブルクリック、またはオートフィルでずぃ~~~!っと下へコピー! そしてSheet1のB5セルに =IFERROR(INDEX(Sheet2!C:C,MATCH($B$2&"_"&$A5,Sheet2!$F:$F,0)),"") という数式を入れ、D列までオートフィルでコピー! そのまま下へコピーすると画像のような感じになります。 おそらくこのような方法で対処できると思います。m(_ _)m

icf06128
質問者

お礼

「tom04様」>早速、ご回答くださり有り難うございます。 確かに画像が小さくなっていました。誠に申し訳ありません。 お教え頂いた方法ですと、Sheet1のB2セルとA5セルにコードが入力されてないと、データ内容が反映されないと思います。 当方で考えておりますのは、Sheet1のB2セルに顧客コードを入力しましたら、商品コード(A5)を入力しなくてもデータベースから内容を引っ張ってくるものです。 従って、Sheet2には顧客コード毎に纏めてデータを作成している状態です。 〔Sheet2 データベース例〕 AA-101-あああ-A-101-1000 AA-201-いいい-B-201-2000 AA-301-ううう-C-301-3000 BB-101-あああ-A-101-1100 BB-201-いいい-B-201-2100 BB-301-ううう-C-301-3100 CC-101-あああ-A-101-1200 CC-201-いいい-B-201-2200 CC-301-ううう-C-301-3200 DD-101-あああ-A-101-1300 DD-201-いいい-B-201-2300 DD-301-ううう-C-301-3300

関連するQ&A