[[20061019190954]] 『リストについて』(大澤) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『リストについて』(大澤)
  
[[20040826180010]]『入力規制』や 
[[20051024111302]]『リストから選択』などを見ていろいろやり方が
 ある事は判りましたが、応用の利かない私にお知恵をお貸しください。お願い致します。

 下記のように「Sheet2」にはリスト、「Sheet1」に入力表を作りました。
 「Sheet1」の計算式に
 A2は入力規則→リスト→元の値=INDIRECT("Sheet2!$A$2:$A$656")
 B2は入力規則→リスト→元の値=INDEX("Sheet2!$A$2:$D$656",,MATCH($A$2,"Sheet2!$A$2:$D$656",))
 と入れましたが、A2はリストに「魚 Nil 肉 Nil 野菜 Nil」と表示されてしまい、B2は計算式のエラーに
 なってしまいます。
A2には「魚 肉 野菜」の3種類を表示させ、B2には適切な計算式を、
また、B2を選択した時点で自動的にC2が出るようにしたいと思っています。
 それと、個数(D2)を入れたときにも、自動的に小計(E2)手数料(F2)合計(G2)と表示させたいんですが
 E2は=C2×D2、G2は=E2×F2といれてあります。...が
F2の計算式も分かりません...。

 「Sheet1」                     「Sheet2」
   A  |B |C  |D |E  |F  |G |    |A |B  |C |D  |
 1 品目|品名|単価|個数|小計|手数料|合計|   |品目|品名|単価|手数料|
 2 魚 |鮭 |150|  2|300| 100| 400|   |魚 |鮭 |150| 50|
 3 : |: | : | :| :|  :| :|   |  |鯵 |100| 20|
 4 : |: | : | :| :|  :| :|   |肉 |牛 |450| 100|
 5 : |: | : | :| :|  :| :|   |  |豚 |250| 50|
 6                          |野菜|なす|50| 10|
 7                          |  |玉葱|40| 10|
 8                          |  |  |  |  |

 品目・品名ともに多いため、私には無理と言われるでしょうが、これが出来ないと困る状況なんです...
 お力を貸して下さい。よろしくお願い致します。

 今回の場合、Sheet2 のリストは、2種類用意した方が管理しやすいでしょうね。
 
Sheet2	[A]	[B]	[C]    	[D]    	[E]	[F]
[1]	魚	肉	野菜   	     	単価	手数料
[2]	鮭	牛	白菜   	鮭    	50	20
[3]	鯵	豚	大根   	鯵    	100	30
[4]	鯵	鳥	にんじん 	鯵    	150	40
[5]	鰯	馬	ジャガイモ	鰯    	200	50
[6]	鯛	羊	キャベツ  	鯛    	250	60
[7]			     	牛    	300	30
[8]			     	豚    	350	40
[9]			     	鳥    	400	50
[10]			     	馬    	450	60
[11]			     	羊    	500	70
[12]			     	白菜   	40	10
[13]			     	大根   	60	20
[14]			     	にんじん  	80	30
[15]			     	ジャガイモ	100	40
[16]			     	キャベツ  	120	50
 
 Sheet2 に、上記のような表を用意してください。
 
1)A1:C6 を範囲指定
2)挿入 → 名前 → 差作成
  □上端行 にチェックを入れOK。
3)Sheet1 の A2 を選択
4)データ → 入力規則
  入力値の種類 : リスト
  元の値    : =INDIRECT("Sheet2!A1:C1")
  OK。
5)Sheet1 の B2 を選択
6)データ → 入力規則
  入力値の種類 : リスト
  元の値    : =INDIRECT($A2)
  OK。
7)C2 =IF(COUNTA(A2:B2)=2,VLOOKUP(B2,Sheet2!$D$1:$F$16,2,0),"")
  E2 =IF(COUNT(C2:D2)=2,C2*D2,"")
  F2 =IF(COUNTA(A2:B2)=2,VLOOKUP(B2,Sheet2!$D$1:$F$16,3,0),"")
  G2 =IF(COUNT(E2:F2)=2,E2+F2,"")
8)A2からG2までを選択して、必要範囲まで以下コピー
 
 ※G2は=E2×F2といれてあります。とありますが、合計は「+」にしてあります。
 
 (キリキ)(〃⌒o⌒)b

 おはようございます。すべての回答が記入されており、感謝感激です。

 さっそくですが、キリキさんにお教えいただいた方法で、今日中に打ち込んでみます。
 もうすでに解決済みの心持ちではあるのですが、どちらにしても結果報告致します。
 また、疑問点が出てきた時にも書き込み致しますので、ご指導お願い申し上げます。

 取り急ぎ、ご挨拶まで。

 (大澤)

出来ました!

 ゆっくり意味を考えながら入力してみましたところ、
 素晴らしく簡潔にまとまった計算式である事に敬服致しました。

 一昨日から悩んでいたのですが、思い切って質問してよかったです。
 私事ながら、これで、ゆっくり寝られます...。(失礼)
 キリキさん、本当にありがとうございました。
 (大澤)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.