一回も披露したことのない豆知識

今ピボットの範囲がこうなっていて

'1'!$A$1:$X$32040

増える範囲は右に?Yの列に増えるという感じなのですが
横に増えてもINDEXとCOUNTAの関数でいけるのでしょうか?

名前の定義で作ってみたのですが、参照が正しくありませんと表示されます。

コピーできる数式を教えてもらえればありがたいです。
よろしくお願い致します。

A 回答 (4件)

>横に増えてもINDEXとCOUNTAの関数でいけるのでしょうか?



出来ますが,別のやり方の方が簡単です。



ところで,COUNTAで勘定できる「前提」をはっきりさせておく必要があります。

例えば
縦に何行有るかは,「A列のデータの個数で漏れなく数えられる」
横に何列有るかは,「1行目のデータ個数で漏れなく数えられる」
のように。

名前の定義の数式の作成:
名前 myList
参照範囲 =OFFSET('1'!$A$1,0,0,COUNTA('1'!$A:$A),COUNTA('1'!$1:$1))
など。


もしどーしてもINDEX+COUNTAを使いたくて仕方ないなら
参照範囲: ='1'!$A$1:INDEX('1'!$A:$IV,COUNTA('1'!$A:$A),COUNTA('1'!$1:$1))
などのように,間違えずに作成する事でも出来ます。
    • good
    • 0
この回答へのお礼

出来ました!
ありがとうございました!

お礼日時:2014/03/18 09:27

>すみませんバージョンは2003です



Excel2003ならリストの機能を利用します。

http://allabout.co.jp/gm/gc/297732/3/

このようにして作成したリスト(テーブル)でピボットテーブルを作成してみてください。

#Officeソフトはバージョンによって使用できる機能や操作方法が大きく異なりますので、質問の際には必ずバージョンを明記するようにしましょう。
    • good
    • 0
この回答へのお礼

ありがとうございました。
バージョンも気をつけるようにします!

お礼日時:2014/03/18 09:25

参考までに



もし関数で対応するなら、INDEX関数よりもOFFSET関数の方がわかりよいと思います。

=OFFSET($A$1,0,0,COUNTA($A:$A),COUNTA($1:$1))
    • good
    • 0
この回答へのお礼

ありがとうございます。
1度やってみたいと思います。

お礼日時:2014/03/14 13:30

数式で対応することもできますが、以下のようなテーブルとして書式設定の機能を使えば、データ範囲に応じて自動的にテーブル範囲が拡大されます(縦方向だけでなく横方向に項目追加しても、「更新」すれば自動的に新しい項目も追加されます)。



バージョンが明記されていないので、Excel2007の例で説明すると、リスト上にカーソルを置いてホームタブの「テーブルとして書式設定」をクリックしてください。

この回答への補足

すみませんバージョンは2003です。
同じようなやり方が出来たりしますでしょうか?

補足日時:2014/03/14 13:31
    • good
    • 0

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


おすすめ情報