VBA削除

以下は、Excel VBAを使用して、B列が〆になっている行を「削除」という名前のシートの3行目に挿入し、最後に移動元の行を削除するためのコード例です。

 

ーーーーーーーーーーーーーーーーーー

Sub MoveToSheetAndDelete()
Dim moveSheetName As String
Dim targetSheetName As String
Dim moveColumn As String
Dim targetRow As Long
Dim lastRow As Long
Dim moveCell As Range
Dim targetCell As Range

' 移動先のシートと行を指定
moveSheetName = ActiveSheet.Name
targetSheetName = "削除"
targetRow = 3

' 移動する列を指定
moveColumn = "B"

' 最終行を取得
lastRow = Cells(Rows.Count, moveColumn).End(xlUp).Row

' B列をループし、〆になっている行を移動
For Each moveCell In Range(moveColumn & "1:" & moveColumn & lastRow)
If moveCell.Value = "〆" Then
' 移動先のセルを取得し、値をコピー
Set targetCell = Sheets(targetSheetName).Cells(targetRow, moveCell.Column)
moveCell.EntireRow.Copy targetCell

' 移動元の行を削除
moveCell.EntireRow.Delete
End If
Next moveCell
End Sub

ーーーーーーーーーーーーーーーーーー

このコードを実行すると、現在アクティブなシートのB列をループし、〆になっている行を「削除」という名前のシートの3行目に移動します。移動元の行は最後に削除されます。

移動する列や移動先のシート名や行番号などは、コード中の適切な部分を変更してください。