フィルターで見えているセルだけに別の場所からコピーしてきた複数セルをペーストする(n行×1列)

Excel のフィルター機能、便利ですよね。使わない日が 1 日たりともありません。I won't last a day without you 〜♫笑

でも、ときどき困ることもあって、そのひとつが「フィルターで見えているセルだけに別の場所からコピーしてきた複数セルをペーストする」ときです。

「フィルターで見えているセルだけをペースとして別の場所にコピーする」のは意外と楽なのです。「選択オプション」で「可視セル」を選びましょう。

結論から先に言うと、「フィルターで見えているセルだけに別の場所からコピーしてきた複数セルをペーストする」方法は Excel には実装されていません。マクロを使えば可能でしょうが、「こんな単純作業のためにそこまで頑張るのも……」という気がします。なので、以下のやり方を考えました。要は見えていない(ペーストしない)ところは空欄になっているような、同じ形の n 行 × 1 列を作ってしまえばいいのです。

  1. A 列は、例えばペーストしたい行のところに「○」が入っているとします。

  2. B 列にはペーストしたい内容が空行なしに入っているとします。

  3. C1 に「=IF(A1="○",INDIRECT(ADDRESS(COUNTA($A$1:A1),2)),"")」などと入れて n 行までコピーして、A 列の「○」のところにだけ B 列のペースとしたい内容が入っていて、それ以外が空行になっている状態を得ます。

  4. C 列を選択してコピーし、D 列に「形式を選択してペースト」→「値」でペーストします。

  5. これでペーストしたいところにペーストしたい内容が入った列を取得できたので、D 列をコピーして、本当にペーストしたい列にペーストします。このとき、ペーストしたくないセルにすでにデータが入っている場合には、コピー形式にも注意してください。「空白セルを無視する」でペーストしましょう。

この記事が気に入ったらサポートをしてみませんか?