dポイントプレゼントキャンペーン実施中!

1行目にはG列からAH列に項目名を入力し、
H列の2~10行目にも項目名。G2:AH10には双方に該当する項目に対し★がつけた星取表があるとします。

ここで各行に★がついている項目名は何であるか、G1:AH1から探し出すとき、
セルAI2に、
 =INDEX($G$1:$AH$1,1,MATCH(”★”,$G2:$AH2,0))
と入力しますが、
2行目に★が複数あった場合、例えば2つ目をAG2に入力すると、
INDEX($G$1:$AH$1,1,MATCH(”★”,$G2:$AH2,0))では
同じ値(項目名)で出力されてしまいます。

なので、例えば2行目にはL列とAA列に★があった場合、
INDEX($M$1:$AH$1,1,MATCH(”★”,$G2:$AH2,0))として
参照する配列を、
1つ目の★が見つかったL列から1つ右に進めた列から参照させるなどして加工しなくては
いけません。

これを手入力でなく、関数など使って自動的に参照列を可変できるような方法はありますか?
ご存知の方どうか教えてください。よろしくお願いします。

A 回答 (4件)

下記の式を入力したセル を右方にズズーッと(空白セルになるまで)オートフィル


=IFERROR(INDEX($A$1:$AH$1,SMALL(IF($G2:$AH2="★",COLUMN(G2:AH2),""),COLUMN(A1))),"")
【お断り】上式は必ず配列数式として入力のこと
    • good
    • 0
この回答へのお礼

解決しました

mike_gさん、ありがとうございました!
おかげでうまく出来ました。
これからもご縁がありましたら、よろしくお願いします。

お礼日時:2017/09/10 14:01

》 2行目に★が複数あった場合、


その複数の品名表示する範囲を指定してネ。
A12、B12、B13、… で宜しゅう御座居留ますか?

項目名なんてな曖昧模糊表現でなく、最初から野菜名とか価格帯とか具体例を告白しておいた方が、回答者が確認する手間が省けることを知っておいてください。
    • good
    • 0

MATCH関数は一番初めに見つけた値を返すからなあ(´・ω・`)



文字列でなくて数値ならちょっとした工夫で何とでもなるんだけど、
質問のケースは文字列ですので「配列数式」を駆使するしかないと思います。

・・・
てことで面倒なので具体的な数式はパス。
(試行錯誤する必要があるんです)
    • good
    • 0

》 1行目にはG列からAH列に項目名を入力し、


》 H列の2~10行目にも項目名。G2:AH10には双方に該当する項目…
「双方」とは、何と何ですか?
    • good
    • 0
この回答へのお礼

H列の2~10行目にも項目名。G2:AH10には双方に該当する項目…
→すいません。H列でなくF列でした。

双方とはG列:AH列の項目とF列の2~10行目の各行のことを指します。
例えば
G1に「トマト」、H1には「きゅうり」
というように1列目には野菜の項目名があるとします。

F列には2行目に「100円未満」3行目に「100円以上200円未満」…と値段の条件が入力されていて、
1行目とF列の条件を満たすものには★がつくといった具合です。

お礼日時:2017/09/09 16:35

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!