Excelで特定の行のみを別シートに切り取り・貼り付けする方法

Excel

Excelで数千行にわたるデータの中から、A列に特定の文字列が入力されている行だけを別シートに移したい場合、通常のフィルターとコピー・貼り付けでは意図した結果にならないことがあります。正しく特定の行のみを移動する手順を解説します。

表示された行のみをコピーする方法

Excelではフィルター機能で特定の行を表示した場合、通常のコピーでは非表示の行も含まれてしまうことがあります。正しくコピーするには、「可視セルのみをコピー」する設定を使用します。

具体的には、フィルターで必要な行を表示した状態で、コピー範囲を選択し、Alt + ;(MacではCommand + Shift + Z)で可視セルのみを選択してからコピーします。

別シートへの貼り付け手順

可視セルのみをコピーした後、目的のシートに移動し、通常通り貼り付けます。これにより、非表示行は含まれず、必要な数百行のみが貼り付けられます。

また、貼り付け後に書式や列幅を調整することで、元のシートと同じ見た目でデータを管理できます。

マクロを使った自動化

頻繁に同じ作業を行う場合は、VBAマクロで自動化することも可能です。以下のような簡単なコード例で、A列に「2026」と書かれている行だけを別シートにコピーできます。

Sub CopyRows2026() Dim wsSource As Worksheet, wsDest As Worksheet, rng As Range, cell As Range Set wsSource = Sheets("元シート") Set wsDest = Sheets("移動先シート") Set rng = wsSource.Range("A10:A3000") For Each cell In rng If cell.Value = 2026 Then cell.EntireRow.Copy wsDest.Cells(wsDest.Rows.Count, 1).End(xlUp).Offset(1, 0) End If Next cell End Sub

注意点とポイント

フィルターと可視セルコピーを使う場合、必ず非表示行も含めてコピーされないことを確認してください。また、マクロを使う場合は、バックアップを取り、正しいシート名と範囲を設定することが重要です。

データ量が多い場合でも、マクロを使うことで手作業のミスを減らし、作業効率を大幅に改善できます。

まとめ

Excelで特定の文字列が入力されている行だけを別シートに移すには、「可視セルのみをコピー」する方法や、VBAマクロによる自動化が効果的です。フィルター機能だけでは非表示行も含まれてしまうため注意が必要です。正しい手順を踏むことで、数百行に及ぶデータも正確に移動できます。

コメント

タイトルとURLをコピーしました