- ベストアンサー
関数を教えてください
エクセルの関数を教えてください。 1行目 A1に「A商品」、B1に「B商品」、C1に「C商品」と入力しました。 2行目 ABC のいずれかに 「0」ゼロを 入力した時(例B2に「0」入力)。 5行目(A5)に B商品 と表示する方法を教えてください よろしくお願い致します。 (1行目と2行目を入れ替えてHLOOKUP関数ではできます)
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
>2行目 ABCのいずれかに「0」ゼロを入力した時(例B2に「0」入力)。 A2またはB2またはC2セルの何れかに数値の0を入力するのですか? 他のセルには何も入力しない場合と0以外の数値または文字列が入力されている場合では扱い方が異なりますので明確にしてください。 尚、未入力と数値の0は同じ扱いになることも考えられますので条件は明確にしてください。 >(1行目と2行目を入れ替えてHLOOKUP関数ではできます) それと同等の考え方ではINDEX関数とMATCH関数を組み合わせればできると思います。 =IFERROR(INDEX(A1:C1,MATCH(0,A2:C2,0)),"") IFERROR関数はExcel 2007以降のバージョンに組み込まれています。 Excel 2003以前のバージョンのときは別のエラーチェックが必要でしょう。
その他の回答 (3)
- imogasi
- ベストアンサー率27% (4737/17069)
A1:D1に A商品 B商品 C商品 D商品 D2に0を入れると =INDEX($A$1:$D$1,MATCH(0,$A$2:$D$2,0)) で 式を入れたセルに D商品 となる。 ・第2行目に0がない場合の対処 ・第2行目に0が2つ以上ある場合の対処 などは =IF(OR(COUNTIF($A$2:$D$2,0)=0,COUNTIF($A$2:$D$2,0)>=2),"",INDEX($A$1:$D$1,MATCH(0,$A$2:$D$2,0))) HLOOKUPを使うのは、不適当かなと思う。
お礼
初心者につき関数を理解していませんが、関数を理解すれば、色々なことができると思い、つい質問をしてしまいます。 回答してくださる方には、本当に感謝しています。 ありがとうございました
- msMike
- ベストアンサー率20% (364/1804)
A5: =INDEX(A1:C1,SUMPRODUCT(((A2:C2<>"")*COLUMN(A1:C1))))
お礼
初心者につき関数を理解していませんが、関数を理解すれば、色々なことができると思い、つい質問をしてしまいます。 回答してくださる方には、本当に感謝しています。 ありがとうございました
- msMike
- ベストアンサー率20% (364/1804)
A5: =INDEX(A1:C1,MATCH(0,A2:C2))
お礼
初心者につき関数を理解していませんが、関数を理解すれば、色々なことができると思い、つい質問をしてしまいます。 回答してくださる方には、本当に感謝しています。 ありがとうございました
お礼
回答して頂いた算式で、思っていたものができました。 ありがとうございました。 初心者につき関数を理解していませんが、関数を理解すれば、色々なことができると思い、つい質問をしてしまいます。 回答してくださる方には、本当に感謝しています。 A2・B2・C2 のいずれかに入力し、他のセルは空欄です。 「0」の扱いについても、質問をする時に文字にしようかと思いましたが、安易に「0」と表示しました。文字にした方がよかったと思っています。 HLOOKUP関数は、初心者の私からすると、上段を認識して下段を表示する と思い、その逆も簡単な関数があるのかと思いました。 IFERROR関数・INDEX関数・MATCH関数についても、よく理解していませんが、勉強して理解すべく努力します。 ありがとうございました。