Excelのセル値に基づいて行全体を別のシートに移動するにはどうすればよいですか?
セルの値に基づいて行全体を別のシートに移動するには、この記事が役立ちます。
VBAコードのセル値に基づいて、行全体を別のシートに移動します
Kutools for Excelを使用して、セル値に基づいて行全体を別のシートに移動します
VBAコードのセル値に基づいて、行全体を別のシートに移動します
以下のスクリーンショットに示すように、列Cに特定の単語「Done」が存在する場合は、行全体をSheet1からSheet2に移動する必要があります。次のVBAコードを試すことができます。
1。 押す 他の+ F11 キーを同時に開いて アプリケーション向け Microsoft Visual Basic 窓。
2. [Microsoft Visual Basic for Applications]ウィンドウで、[ インセット > モジュール。 次に、以下のVBAコードをコピーしてウィンドウに貼り付けます。
VBA code 1: Move entire row to another sheet based on cell value
Sub Cheezy()
'Updated by Kutools for Excel 2017/8/28
Dim xRg As Range
Dim xCell As Range
Dim I As Long
Dim J As Long
Dim K As Long
I = Worksheets("Sheet1").UsedRange.Rows.Count
J = Worksheets("Sheet2").UsedRange.Rows.Count
If J = 1 Then
If Application.WorksheetFunction.CountA(Worksheets("Sheet2").UsedRange) = 0 Then J = 0
End If
Set xRg = Worksheets("Sheet1").Range("C1:C" & I)
On Error Resume Next
Application.ScreenUpdating = False
For K = 1 To xRg.Count
If CStr(xRg(K).Value) = "Done" Then
xRg(K).EntireRow.Copy Destination:=Worksheets("Sheet2").Range("A" & J + 1)
xRg(K).EntireRow.Delete
If CStr(xRg(K).Value) = "Done" Then
K = K - 1
End If
J = J + 1
End If
Next
Application.ScreenUpdating = True
End Sub
注意:コードでは、 Sheet1 ワークシートには、移動する行が含まれています。 そして Sheet2 行を配置する宛先ワークシートです。 「「C:C」は特定の値を含む列であり、「クリックします」は、行を移動する特定の値です。 必要に応じて変更してください。
3。 プレス F5 キーを押してコードを実行すると、Sheet1の条件を満たす行がすぐにSheet2に移動します。
注意:上記のVBAコードは、指定されたワークシートに移動した後、元のデータから行を削除します。 行を削除するのではなく、セル値に基づいて行をコピーするだけの場合。 以下のVBAコード2を適用してください。
VBA code 2: Copy entire row to another sheet based on cell value
Sub MoveRowBasedOnCellValue()
'Updated by Extendoffice 2017/11/10
Dim xRg As Range
Dim xCell As Range
Dim I As Long
Dim J As Long
Dim K As Long
I = Worksheets("Sheet1").UsedRange.Rows.Count
J = Worksheets("Sheet2").UsedRange.Rows.Count
If J = 1 Then
If Application.WorksheetFunction.CountA(Worksheets("Sheet2").UsedRange) = 0 Then J = 0
End If
Set xRg = Worksheets("Sheet1").Range("C1:C" & I)
On Error Resume Next
Application.ScreenUpdating = False
For K = 1 To xRg.Count
If CStr(xRg(K).Value) = "Done" Then
xRg(K).EntireRow.Copy Destination:=Worksheets("Sheet2").Range("A" & J + 1)
J = J + 1
End If
Next
Application.ScreenUpdating = True
End Sub
Kutools for Excelを使用して、セル値に基づいて行全体を別のシートに移動します
VBAコードの初心者の場合。 ここで紹介します 特定のセルを選択 の有用性 Kutools for Excel。 このユーティリティを使用すると、ワークシート内の特定のセル値または異なるセル値に基づいてすべての行を簡単に選択し、必要に応じて選択した行をコピー先のワークシートにコピーできます。 次のようにしてください。
申請する前に Kutools for Excelについては 最初にダウンロードしてインストールします.
1.行を移動するセル値が含まれている列リストを選択し、をクリックします クツール > 次の項目を選択します。: > 特定のセルを選択。 スクリーンショットを参照してください:
2.オープニングで 特定のセルを選択 ダイアログボックスで、 行全体 選択タイプ セクション、選択 等しいです 特定のタイプ ドロップダウンリストで、テキストボックスにセルの値を入力し、[ OK ボタン。
別の 特定のセルを選択 ダイアログボックスがポップアップして、選択した行の数が表示されます。その間、すべての行には、選択した列に指定した値が含まれています。 スクリーンショットを参照してください:
3。 プレス Ctrlキー + C キーを押して選択した行をコピーし、必要な宛先ワークシートに貼り付けます。
注意:XNUMXつの異なるセル値に基づいて行を別のワークシートに移動する場合。 たとえば、「完了」または「処理中」のセル値に基づいて行を移動すると、 Or の条件 特定のセルを選択 以下のスクリーンショットのようなダイアログボックス:
無料トライアルをご希望の方は(30-day) このユーティリティの クリックしてダウンロードしてください、次に、上記の手順に従って操作を適用します。
関連記事:
最高のオフィス生産性ツール
Kutools for Excelはほとんどの問題を解決し、生産性を80%向上させます
- 再利用: すばやく挿入 複雑な数式、チャート および以前に使用したものすべて。 セルを暗号化する パスワード付き。 メーリングリストを作成する そしてメールを送る...
- スーパーフォーミュラバー (複数行のテキストと数式を簡単に編集できます); 読書レイアウト (多数のセルを簡単に読み取って編集する); フィルター範囲に貼り付け...
- セル/行/列をマージする データを失うことなく; 分割セルコンテンツ; 重複する行/列を組み合わせる...重複セルを防止します。 範囲を比較する...
- [複製]または[一意]を選択します 行; 空白行を選択 (すべてのセルは空です); スーパーファインドとファジーファインド 多くのワークブックで; ランダム選択...
- 正確なコピー 数式参照を変更せずに複数のセル。 参照の自動作成 複数のシートに; 箇条書きを挿入、チェックボックスなど...
- テキストを抽出、テキストの追加、位置による削除、 スペースを削除する; ページング小計の作成と印刷。 セルの内容とコメントを変換する...
- スーパーフィルター (フィルタースキームを保存して他のシートに適用します); 高度な並べ替え 月/週/日、頻度など。 特殊フィルター 太字、斜体...
- ワークブックとワークシートを組み合わせる; キー列に基づいてテーブルをマージします。 データを複数のシートに分割; xls、xlsx、PDFをバッチ変換...
- 300 以上の強力な機能. Office / Excel 2007-2021 および 365 をサポートします。すべての言語をサポートします。 企業や組織に簡単に導入できます。 フル機能の 30 日間無料トライアル。 60日間の返金保証。

Officeタブは、タブ付きのインターフェイスをOfficeにもたらし、作業をはるかに簡単にします
- Word、Excel、PowerPointでタブ付きの編集と読み取りを有効にする、パブリッシャー、アクセス、Visioおよびプロジェクト。
- 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
- 生産性を 50% 向上させ、毎日何百回もマウス クリックを減らすことができます!































































