- ベストアンサー
ピボットテーブル データ範囲の自動更新
今ピボットの範囲がこうなっていて '1'!$A$1:$X$32040 増える範囲は右に?Yの列に増えるという感じなのですが 横に増えてもINDEXとCOUNTAの関数でいけるのでしょうか? 名前の定義で作ってみたのですが、参照が正しくありませんと表示されます。 コピーできる数式を教えてもらえればありがたいです。 よろしくお願い致します。
- みんなの回答 (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)) などのように,間違えずに作成する事でも出来ます。
その他の回答 (3)
- MackyNo1
- ベストアンサー率53% (1521/2850)
>すみませんバージョンは2003です Excel2003ならリストの機能を利用します。 http://allabout.co.jp/gm/gc/297732/3/ このようにして作成したリスト(テーブル)でピボットテーブルを作成してみてください。 #Officeソフトはバージョンによって使用できる機能や操作方法が大きく異なりますので、質問の際には必ずバージョンを明記するようにしましょう。
お礼
ありがとうございました。 バージョンも気をつけるようにします!
- MackyNo1
- ベストアンサー率53% (1521/2850)
参考までに もし関数で対応するなら、INDEX関数よりもOFFSET関数の方がわかりよいと思います。 =OFFSET($A$1,0,0,COUNTA($A:$A),COUNTA($1:$1))
お礼
ありがとうございます。 1度やってみたいと思います。
- MackyNo1
- ベストアンサー率53% (1521/2850)
数式で対応することもできますが、以下のようなテーブルとして書式設定の機能を使えば、データ範囲に応じて自動的にテーブル範囲が拡大されます(縦方向だけでなく横方向に項目追加しても、「更新」すれば自動的に新しい項目も追加されます)。 バージョンが明記されていないので、Excel2007の例で説明すると、リスト上にカーソルを置いてホームタブの「テーブルとして書式設定」をクリックしてください。
補足
すみませんバージョンは2003です。 同じようなやり方が出来たりしますでしょうか?
お礼
出来ました! ありがとうございました!