North Detail / ノースディテール

BLOG ブログ

ブログ
CATEGORY
TECH

Excelでフィルターコピーが正しく動作しない場合の解決法

フィルターコピーが正しく動作しない

Excelでフィルターをかけている状態でコピーや貼り付けをして、 期待通りの結果にならなかったことはありませんか?
私はあります。
Excelのバージョンによってフィルターコピーの方法が異なるからか、ネットで調べた方法でフィルターコピーしてみてもできないことがありました。
今回は私が試行錯誤して実現できたフィルターコピーの方法をまとめたいと思います。
ちなみに私が利用しているバージョンはMicrosoft365(Office365)で最新に自動更新されているものです。

準備

以下の表を例として説明します。

先頭行にフィルターを設定して、「地域」列=「北海道」でフィルターをかけます。
以下のようにNo.1とNo.3の行だけが表示されます。

何も工夫しないでコピーして貼り付けをする場合

「地域」列の情報をそのまま「貼り付け先」列にコピーすると、以下の状態となります。
No.1には貼り付けられていますが、No.3には貼り付けられていないように見えます。

どういう状態になっているかフィルターを解除して確認すると、上から順番に貼り付けがされてNo.1とNo.2に貼り付けされている状態で、期待通りの結果とはなっていません。

解決策1:同じ内容をコピーして貼り付ける場合

いったん元の状態に戻して、今度は同じ内容を貼り付ける場合の方法を見てみます。
「貼り付け先」列に同じ「北海道」という内容が貼り付けられるようにします。

  1. 「地域」列の「北海道」1行(C2セル)だけを選択してコピーします。
  2. 「貼り付け先」列の対象行のセル(D2セルとD4セル)を全て選択して、[Alt]キーと[;]キーを同時に押して、貼り付けをします。

以下のようにNo.1にもNo.3にも「北海道」が貼り付けられています。

フィルターを解除して確認すると期待通りの結果となっていることが確認できます。

解決策2:複数行をコピーして貼り付ける場合

上記の解決策1の方法については以前から知っていたのですが、 複数行をコピーしようとするとエラーになってしまって、困ったことがありました。

フィルターがかかっている状態で「説明列」行の2つの内容を選択して、解決策1と同じ方法でコピーをしようとすると、以下のようなエラーが発生しました。これができないのは、どうやらExcelの仕様のようです。

仕様でできないのは仕方がないので、どうしても実現したい場合、違う方法を試すしかありません。
いったんフィルターでの絞り込みを解除して、「地域列」のフィルターの中の「昇順」(または「降順」)を選択します。

下記のように、地域順に並んで、「北海道」の行も並んでいる状態となります。

あとは、このまま該当行の「説明列」をコピーして、「貼り付け先」列にそのまま貼り付けます。

最後に「No.」列のフィルターで「昇順」を選択すれば元の並び順となって、期待通りの結果となっています。

まとめ

記載の例は行数が少ないため工夫しなくて1つずつ手作業でも可能な量ですが、実際には何千・何万行もあるExcelを利用する場合もあると思います。その場合は有効な方法だと思いますので、試してみてください。

haya
WRITER:haya
主な記事 一覧へ

一覧へ

IS 501383 / ISO 27001