- ベストアンサー
エクセルで質問です。
数式か、VBA、どちらでも良いのですが、 A1=1で、なおかつB1=1の場合、C1からC10のDATAをD1からD10に表示する。 A1=1で、なおかつB1=2の場合、C11からC20のDATAをD1からD10に表示する。 ・ ・ ・ というように、"A1"は1~22まで、"B1"は1~6まで、各数字を組み合わせた時のDATAを表示したいのです。 組み合わせも多いのでどうして良いのか分かりません。 素人の浅知恵ではとても無理ですので、お助け下さいまし。。。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。maruru01です。 D1に、 =IF(AND($A$1>=1,$A$1<=22,$B$1>=1,$B$1<=6),INDEX($C$1:$C$1320,($A$1-1)*60+($B$1-1)*10+ROW(D1)),"") と入力して、D10までコピーします。 とりあえず、22>=A1>=1、6>=B1>=1の範囲を越える場合(文字列も含む)は、非表示にしてあります。
その他の回答 (2)
- AQUALINE
- ベストアンサー率33% (18/53)
D1に =OFFSET(C1,($A$1-1)*60+($B$1-1)*10,0) を入力し D10までコピーしても出来ますね。
お礼
お返事遅くなりました。 ご指示いただいて確かに出来ました! 助かりました。有り難うございました!
- tbobi
- ベストアンサー率45% (544/1189)
VBAを使うことになると思いますが、A1とその結果との因果関係がよくわからないのですが・・・。 ご質問中の例のあとだと・・・ A1=1で、なおかつB1=3の場合、C21からC30のDATAをD1からD10に表示する。 A1=1で、なおかつB1=4の場合、C31からC40のDATAをD1からD10に表示する。 A1=1で、なおかつB1=5の場合、C41からC50のDATAをD1からD10に表示する。 A1=1で、なおかつB1=6の場合、C51からC60のDATAをD1からD10に表示する。 ・ ・ ・ こうなると思いますが、以後はどうなのでしょう? A1=2で、なおかつB1=1の場合、? ・ A1=3で、なおかつB1=1の場合、? ・ A1=4で、なおかつB1=1の場合、? ・ A1=5で、なおかつB1=1の場合、? ・ A1=6で、なおかつB1=1の場合、? ・
補足
早速のお助け感謝致します。 説明不足です、申し訳ありません。 今現実の私のエクセル表では、 A1=2,B1=1,の場合、"C61"から"C70"、 A1=2,B1=2,の場合、"C71"から"C80"、 A1=3,B1=1,の場合、"C121"から"C130"、・・・ と言う様に、DATAは"列C"で縦長に伸びています。 結果を表示したい"列D"セルは"D1"から"D10"限定です。 こんな説明しか出来ませんがご理解頂けましたでしょうか?
お礼
お返事遅くなってすみません。 バッチリです!!! あんなに悩んでいたのにこんなアッサリと・・・ 非表示もめっちゃ助かります! 本当に有り難うございましたm(__)m