[[20060608141651]] 『複数の表から、1つのセルに価格を表示させたいでax(マキシフォード) >>BOT

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

 

『複数の表から、1つのセルに価格を表示させたいです。』(マキシフォード)

 皆さん初めまして。よろしくお願いします。
今回、下記の表から、品目とサイズをマニュアル入力し、価格を自動表示させたいのですが、
IFとVLOOKUPと併せて数式を作成したのですが、うまくいきませんでした。
(IFは連続確か7回でしたっけ?それが原因だと思います。)
いい数式や関数、方法がございましたら、御回答頂けます様お願い申し上げます。

※今回、普通ではありえませんが、ジュースの価格はすべて異なっています。
 わかりやすくする為、ジュースを用い、表を作りました。
 実際には更に多い表を用い、すべての数値(ここでいう価格)が異なる状態での回答を出したいと思います。

     品目 価格

	サイズ						
   A  B    C  D       E  F      G    H							
1   コーラ    スポーツドリンク	野菜ジュース 	 コーヒー	
2  S  100	S  120	     S  150	     S   130
3  M  150	M  180	     M  250	     M   200
4  L  200	L  250	     L  350	     L   310
5    水  	オレンジジュース	栄養ドリンク	 ココア	
6  S  90	S  110	     S  170	     S   140
7  M  140	M  170	     M  290	     M   210
8  L  190	L  230	     L  380	     L   330


 上の表で、「コーラ」がA1セル、「スポーツドリンク」がC1セル・・・とあるものとして、

      A
 10  ココア							
 11    L							
 12    330

 A12=IF(COUNTIF(A1:H1,A10)=0,0,INDEX(A2:H4,MATCH(A11,A2:A4,0),MATCH(A10,A1:H1,0)+1))
    +IF(COUNTIF(A5:H5,A10)=0,0,INDEX(A6:H8,MATCH(A11,A6:A8,0),MATCH(A10,A5:H5,0)+1))

 こんな感じで一応できますが。
 商品やサイズが無記入や誤記入の場合のチェックはしていません。
 (sato)


	A	 	B	C
  1 種類	 	         サイズ   価格
  2 コーラ	 	S	100
  3 コーラ	 	M	150
  4 コーラ	 	L	200
  5 スポーツドリンク	S	120
  6 スポーツドリンク	M	180
  7 スポーツドリンク	L	250
  8 野菜ジュース 	S	150
  9 野菜ジュース	     M 	250
 10 野菜ジュース     L	350
 11 コーヒー	 	S	130
 12 コーヒー	 	M	200
 13 コーヒー	 	L	310
 14 水	     	S	900
 15 水	     	M	140
 16 水	 	     L	190
 17 オレンジジュース	S	110
 18 オレンジジュース	M	170
 19 オレンジジュース	L	230
 20 栄養ドリンク 	S	170
 21 栄養ドリンク 	M	290
 22 栄養ドリンク 	L	380
 23 ココア	 	S	140
 24 ココア	 	M	210
 25 ココア	 	L	330

 回答ではありませんが、こういった表にすることをお勧めします。
 ご提示の表は、人間には見やすくてもエクセルには見にくい表です。
 必要ならこの表から作り出せます。
(純丸)(o^-')b

 または、
	A	 	B         C        D
  1 種類	 	         S         M        L
  2 コーラ                100       150      200
  3 スポーツドリンク      120       180      250
       ・                   ・    ・   ・
       ・                   ・    ・   ・
       ・                   ・    ・   ・

 こんな感じの表でもいいかもよ。
 (sato)

 satoさん、純丸さん、御回答頂きまして、本当にありがとうございます☆
今回出題させて頂きましたマキシフォードです。

お手数をお掛けしましてすいませんでした。m(_ _)m
お陰様で今回の数式等を理解することが出来ました☆

又、恐縮ですが、もしよろしければ、今回の内容で、追加の不明点をお伺い致したいのですが、

お答え頂きました出題の内容と同様で、サイズを消去し、

種類と数値を入力しましたら、

種類 コーラ

数値 120

=価格 100

   A     B      C      D

1 コーラ スポーツD 野菜ジュース コーヒー

2  100   120    150     130 

3  150   180    250     200

4  200   250    350     310

5

6 水 オレンジジュース 栄養ドリンク ココア   
 

7 90     110     170     140

8 140    170     290     210

9 190    230     380     330  

と、表の価格そのものを(※VLOOKUPを使った時の近似値ですね。今回でいうと数値は所持金と思って下さい。)を、

複数の表から表示させたいのですが…
お手数をお掛けしてすいませんが、よろしければ御返答頂けましたら幸いです。 


 どうしても表を二つにしたいみたいですね・・・。

     A            B               C             D            
 1 コーラ	  スポーツドリンク  野菜ジュース     コーヒー
 2   100         120             150           130
 3   150         180             250           200
 4   200         250             350           310
 5  水	オレンジジュース	 栄養ドリンク	ココア
 6    90         110             170           140
 7   140         170             290           210
 8   190         230             380           330
 9			
10  種類       コーラ		
11  数値         190		
12  価格         150

 こんな感じであれば、

 B12=IF(COUNTIF(A1:D1,B10)=0,0,VLOOKUP(B11,OFFSET(A1,1,MATCH(B10,A1:D1,0)-1,3,1),1))
    +IF(COUNTIF(A5:D5,B10)=0,0,VLOOKUP(B11,OFFSET(A5,1,MATCH(B10,A5:D5,0)-1,3,1),1))

 ではいかが?
 (sato)		


     A            B               C             D            
 1 コーラ	  スポーツドリンク  野菜ジュース     コーヒー
 2   100         120             150           130
 3   150         180             250           200
 4   200         250             350           310
 5
 6  水	オレンジジュース	 栄養ドリンク	ココア
 7    90         110             170           140
 8   140         170             290           210
 9   190         230             380           330
10			
11  種類       コーラ		
12  数値         190
13  価格     150

 A1:D4とA6:D9を選択し、挿入>名前>作成>「上端行」にチェックしてOKをクリック。
 B13セルに、=VLOOKUP(B12,INDIRECT(B11),1) と入力。(エラー処理無し)
(純丸)(o^-')b

 純丸さんの方法、カッコいいですね。
 メモしときます。
 (sato)


 セル範囲の名前付けとINDIRECT関数の組み合わせは、けっこう応用範囲が広いです。
 例えば↓なんかもいい例だと思います。
[[20051024111302]]『リストから選択』(若葉マーク)
(純丸)(o^-')b

 satoさん、純丸さん、今回も御回答頂きまして、本当にありがとうございます☆
依頼させて頂いたマキシフォードです。

お陰様で今回、教えて頂いた方法で、計算書を作る事が出来ました☆

 これからはこちらのサイトにて勉強させて頂き、レベルを上げていきたいと思います☆
本当にありがとうございました☆m(__)m


コメント返信:

[ 一覧(最新更新順) ]


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