2008-01-12

Excelのオートフィルタとコピー・ペーストの挙動

Excelのオートフィルタで、ある条件のデータだけを表示した状態にし、その絞り込まれた範囲をコピー・ペーストした場合、Excel 2003では絞り込まれたデータデータ行だけがペーストされた。但し、クリップボードへのコピーが非アクティブになった状態(選択範囲のセルの周りに点線が回っていない状態)になった後に再度コピーすると、絞り込まれた範囲以外のデータ行も含まれてしまうので、新たに選択範囲の指定をし直さないといけなかった。また、ただのペーストではなく、値貼り付けを行った場合も絞り込まれた範囲以外のデータ行がペーストされてしまう。

この辺の挙動はちょっとやっかいというか、作り込みが甘いような気がするが、経験的にそんなもんだと覚えて作業をしていた。

オートフィルタでデータを絞り込んでいる以上、その絞り込まれたデータだけが操作の対象(コピー・ペースト等)となることを期待するのが自然だとは思う。

さて、Excel 2007。
2003のつもりで、フィルターで絞り込みをした後にコピー&ペーストすると、表示されている以外のデータもペーストされてしまう。どうやら仕様が変わったようだ。いろいろ検索してみると、範囲をマウスで指定した後に、Alt+;で「可視セルの選択」をすると、今現在表示されているセルだけを選択できるようになる。そしてCtrl+CCtrl+V。これでうまく行く。
「可視セルの選択」という動作がワンアクション増えてしまうが、選択範囲を明示的に選ぶという意味でもこの動作の方が確実かもしれない。そして何より、可視セルの選択を行うと値貼り付けをした場合でも絞り込んだデータだけをペーストすることができるようになった。

画像を付けてちょっと説明

先ずはこんな感じのリストがあるとする。
リストの作成
この中からBerryz工房に所属するメンバーだけを表示させる。
フィルタで絞り込み表示
このセルをコピー&ペーストすると、表示されていない部分のデータもコピーされてしまう。
貼り付けた状態:非表示データもコピーされる
普通は表示されている通りにペースト出来ることを期待すると思う。そこで、フィルタで絞り込み、範囲を選択した後に一度Alt+;で可視セルの選択を行う。
可視セルの選択
そしてコピー・ペーストすると、表示されているデータのみがペーストできた。
可視セルを選択しコピペ

1 件のコメント:

匿名 さんのコメント...

Alt+;の情報とても助かりました。ありがとうございます。