• ベストアンサー

別シートにリストを作り、そこから選択出来るようにしたい、その他

こんにちは。初心者ですが上司に言われ困ってます。 原価計算書を作りたい(作れ!・・ですが^^)のですが、仕入れ価格や、資材名が変更になった場合、原価計算書一枚一枚訂正するのは間違いの元と思い、一つのシートにリストを作成し、それを参照できれば訂正も早いのでは・・・。と思っています。 今、考えているのは、例えばSheet1のA1~A10に順に醤油、砂糖、塩、みりん、調味料などと原料名を入れ、B1~B10に醤油、砂糖、塩~の仕入れ価格(円)60、88、27などを入れます。 それをSheet2以降(シート1枚に1商品の原価計算書を作りたいので、同じ書式のシートを複数つくる事になる)の原価計算書の、例えばC5~C30の「原材料名」欄に入れるのですが、ドロップダウンというのか、逆▼の矢印をクリックすると、Sheet1のリストが現れ、クリックすればSheet2のC5~C30の任意の場所に表示されるというようなのが理想です。 また、Sheet2のC5~C30に▼を使用し、例えばSheet2のC10に「醤油」と入力したなら、それに呼応するようにD10に「60」と、C11に「塩」と入れたならD11に「27」と、醤油、塩の価格が自動的に表示されるようにしたいのです。 EXCELLで可能と思い、「本気のエクセル関数」という本を読んだのですが、元々知識が薄い上に、上記と合致した例題がなかったので、分からずじまいになって困ってしまって・・。上司からの期限は迫ってくるし・・・。 「自分で出来ないからって人に頼るな!!」って言いたいトコですが、そういう自分も出来ないので何も言えず(-_-;) どなたかご存じの方、是非お知恵をお貸し下さい。 お忙しいとは思いますがよろしくお願い致します。

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

  • ベストアンサー
  • rin01
  • ベストアンサー率43% (33/76)
回答No.3

こんにちは~♪ >ドロップダウンというのか、逆▼の矢印をクリックすると、 >Sheet1のリストが現れ、クリックすればSheet2のC5~C30の >任意の場所に表示されるというようなのが理想です。 ★ドロップダウンリストの作り方です。 (1)sheet2から 挿入→名前定義  名前 → 原材料名リスト   参照範囲→ =Sheet1!$A$1:$A$10 (2)sheet2のC5~C30を選択して  データ→入力規則→設定から  *入力値の設定   リスト  *元の値 =原材料名リスト  以上で~す。。。 >醤油、塩の価格が自動的に表示されるようにしたいのです は、 sheet2の D5: =IF(COUNTIF(sheet1$A:$A),VLOOKUP(C$5,sheet1!$A:$B.2,0),"") 下にコピーしてください。。 。。。。Ms.Rinでした~♪♪

noname#169027
質問者

お礼

ありがとうございました(^o^) ずばり解決致しました。これから期日までに表作りです。スッキリしたので楽しくやれそうです。 補足までして頂きホントに助かりました。 関係ない話ですが、前の「教えてGoo」より文面が見やすくなった気がしませんか? 何となく女性的なイメージに見えるんですが私だけでしょうか? おかげでRinさんのご回答も(Mr.と付いているので男性とは思いますが(^_^;))も何となく女性の様な感じに見えました(笑) 親切にお教え頂きありがとうございました。また、質問させて頂く機会もあると思いますので、その節はよろしくお願い致します。

その他の回答 (5)

  • sige1701
  • ベストアンサー率28% (74/260)
回答No.6

参考までに D5: =SUMIF(Sheet1!$A:$A,$C5,Sheet1!$B:$B) 但し、該当品目がない場合は0となります。 該当品目に重複がある場合は合計になります。

noname#169027
質問者

お礼

ありがとうございました。 試してみたのですが、NO.3の方にお教え頂いた方法が分かりやすくて参考にさせて頂きました。 色々な方法があるんですね。全くもって勉強不足です(*^_^*)

  • Nouble
  • ベストアンサー率18% (330/1783)
回答No.5

プルダウンリストは他の方のやり方でお願いします 済みませんがやや仕様変更お願いします D:Dに書式設定でユーザー書式「#,#,""」を設定してください 参照表はシート1のA2:B11に作りA1:B1には何も値や文字を入れないでください =INDEX(Sheet1!$J$1:$J$11,SUMPRODUCT(COUNTIF($K3,Sheet1!$I$2:$I$11),ROW(Sheet1!$I$2:$I$11)-ROW(Sheet1!$I$1))+1,) ややざんない内容ですがこれでもいけると思います

noname#169027
質問者

お礼

ありがとうございました。 試してみたのですが、NO.3の方にお教え頂いた方法が分かりやすくて参考にさせて頂きました。 色々な方法があるんですね。全くもって勉強不足です(*^_^*)

  • rin01
  • ベストアンサー率43% (33/76)
回答No.4

すみませ~ん。。。♪ 式を訂正します。。 式の中で抜けてるところが いくつもありました。 sheet2の D5: =IF(COUNTIF(Sheet1!$A:$A,$C5),VLOOKUP($C5,Sheet1!$A:$B,2,0),"") 下にコピーです。 。。。Ms.Rin~♪♪

回答No.2

追記です。 選択した値によって他のセルの値を自動入力させるとの事ですが、 Vlookup関数を調べてみてください。

回答No.1

Sheet1とSheet2と使用し、Sheet2をリスト用のシートとし、回答します。 まず、Sheet2にリストの値を入力していきます。 A1に しょうゆ A2に みりん A3に 砂糖 ・・ で、ここでは3つ入力したので、A1からA3を選択した状態で名称をつけます。(A1とかA2とか表示しているテキストボックスに入力します。) で、Sheet1でリストの値を選択したいセルで、 データ→入力規制→入力値の種類を「リスト」にし、 元の値に さっき付けた名称を入力します。 この要領でいくつでも設定できます。 また、現在設定されている名前一覧は、 挿入→名前→定義 で確認できます。

noname#169027
質問者

お礼

ありがとうございました。解決致しました。 ようやくこれから表作りです。ガンバリます!!

関連するQ&A