- ベストアンサー
【2段階リスト】コピーするとリストが表示されない
2段階リストを設定したセルをコピーして使ったとき、1段目は絶対値、2段目は相対値にして関数式を入れました。 しかしなぜかリストが入っているセル(列)をコピーしたとき、3列目で一部の2段階リストの2段目のリストが表示されなくなりました。 そこで1段目リストの絶対値を相対値にしてみましたが、それでもこの現象?は変わりません。 対策を教えてください。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
回答No.1の補足にあるデータの入力規則でリストを参照する数式の私案を提示します。 シート2のB11は大項目を1段目のリストから選択するものとして次の数式とします。 =シート1!$A$1:$H$1 シート2のB12は小項目を2段目のリストから選択するものとします。 但し、大項目の「や・ゆ・よ」や「(記号)」のように空欄のあるリストも空欄も含めた小項目の全リストをプルダウンリストに表示するものとし、次の数式とします。 =OFFSET(シート1!$A$1,1,MATCH(B11,シート1!$A$1:$H$1,0)-1,5) シート2のB11とB12を右のC11とC12セルへコピーすれば質問の要望が満たされると思います。 当方の解釈に誤りがありましたら補足で条件を提示してください。 尚、OFFSET関数の高さを変数に置き換えることは可能ですが知識不足の方への説明が難しいので要望をご遠慮いただければ幸いです。
その他の回答 (3)
- watabe007
- ベストアンサー率62% (476/760)
>=OFFSET(リスト2!A2,0,MATCH($B$11,リスト2!$A$1:$H$1,0)-1,COUNTA(OFFSET(リスト2!A2,0,MATCH($B$11,リスト2!$A$1:$H$1,0)-1,5,1))) ↓ =OFFSET(リスト2!$A$2,0,MATCH(B$11,リスト2!$A$1:$H$1,0)-1,COUNTA(OFFSET(リスト2!$A$2,0,MATCH(B$11,リスト2!$A$1:$H$1,0)-1,5,1)),1)
- miso_kasu
- ベストアンサー率60% (6/10)
>B11,B12セルが参照先ですが、実際は1列に2段階リストを2箇所(計4セル)設定しています。 B11,B12セルが表示された画像が無いのでやりたいことが分かりません。 また、「入力規則のリスト」を設定するセルは参照先ではなく参照元のように思われます。 更に、「1列に2段階リストを2箇所(計4セル)」も手入力で結果を画像に提示しないと理解困難です。 >たとえばB11は ----- 以下省略 提示の数式を添削するには解読に少々時間が掛かりますので暫くお待ちください。 残念ですが今回の補足ではあなたの意図が見えてきません。 2段目の小分類のリスト位置をOFFSET関数を使うことにこだわりますか?
- miso_kasu
- ベストアンサー率60% (6/10)
前回の質問(https://okwave.jp/qa/q9968910.html)との関係をお聞かせください。 >2段階リストを設定したセルをコピーして使ったとき、1段目は絶対値、2段目は相対値にして関数式を入れました。 データの入力規則でリストを選んだときはリストの保存先セルは絶対番地にすべきです。 2段目とは1段目で選択した項目を参照して2段目のリストを選択する方法となりますので2段目の値をリストから選択するときにリストの位置がずれないようにしなければなりません。 そのためにはリストのセル位置を絶対番地で指定することをお薦めします。 前回の質問ではOFFSET関数とMATCH関数の組み合わせでリストのセル範囲を切り替えていたようですが今回も同じですか? >しかしなぜかリストが入っているセル(列)をコピーしたとき、3列目で一部の2段階リストの2段目のリストが表示されなくなりました。 文章では分かり難いので画像で提示して頂けると原因を探せると思います。 現状では不具合の原因を推定できませんので回答困難です。
補足
ありがとうございます。 以下、表となります。 https://chie-pctr.c.yimg.jp/dk/iwiz-chie/reply-1058408408?w=999&h=999&up=0 表内の命題で示したとおり、参照元と参照先は違うシートにあります。 B11,B12セルが参照先ですが、実際は1列に2段階リストを2箇所(計4セル)設定しています。 この参照先を列ごとコピーすると、1箇所の小項が、なぜか3列目からリスト表示されません。 (データの「リスト」から作りますが、リスト自体はできても、表示がされない) たとえばB11は =■2段階リスト用!$J$1:$M$1 という式、B12の「データの入力規則」の「元の値」には下記の式を入れました。 =OFFSET(リスト2!A2,0,MATCH($B$11,リスト2!$A$1:$H$1,0)-1,COUNTA(OFFSET(リスト2!A2,0,MATCH($B$11,リスト2!$A$1:$H$1,0)-1,5,1))) 1段目、2段目を相対値にして試しましたが、同じ現象になります。
お礼
空白リストは作りたくないので、絶対値の記号を質問の式に入れました。 =OFFSET(■2段階リスト用!$A$2,0,MATCH(B11,■2段階リスト用!$A$1:$I$1,0)-1,COUNTA(OFFSET(■2段階リスト用!$A$2,0,MATCH(B11,■2段階リスト用!$A$1:$I$1,0)-1,6,1))) また、コピーしても正常にリストが作られました。 ありがとうございました。