'How to cut entire row based on a specific Text
How to cut the entire row for any cell in column M that contains the word “ time “?
Noting that I want to keep the data in the same worksheet. However, cut to the very top.
January is the name of the sheet in the workbook.
Dim AW As long, I as long
With Sheets("January")
AW = .Range("M2:M" & Rows.Count).End(xlUp).Row
For I = 1 to AW
With .Range("M2:M" & I)
If.Value = " Time" Then
.EntireRow.Cut Sheets("January").Cells(Rows.Count, "A") End(xlUP).offset(1,0)
Solution 1:[1]
Sub TestRun()
Call RemoveString("January", "Time", "M")
End Sub
Sub RemoveString(sheetName As String, txt As String, columnLetter As String)
Dim intLastRowNum As Long, intCellNum As Long
With Sheets(sheetName)
intLastRowNum = .UsedRange.Rows.Count
For intCellNum = 3 To intLastRowNum
If LCase(.Range(columnLetter & intCellNum).Value) = LCase(txt) Then
.Rows(intCellNum).EntireRow.Delete
intCellNum = intCellNum - 1
End If
Next
End With
End Sub
Solution 2:[2]
Cut/Paste to Top
- It is assumed that the data is in a table (one row of headers and data below) that starts in
A1.
Option Explicit
Sub cutPasteToTop()
Const wsName As String = "January"
Const cCol As String = "M"
Dim wb As Workbook: Set wb = ThisWorkbook ' workbook containing this code
Dim ws As Worksheet: Set ws = wb.Worksheets(wsName)
If ws.AutoFilterMode Then
ws.AutoFilterMode = False
End If
Application.ScreenUpdating = False
Dim irg As Range: Set irg = ws.Range("A1").CurrentRegion
Dim rowsMoved As Boolean
With irg
.AutoFilter ws.Columns(cCol).Column, "Time"
Dim rCount As Long
rCount = WorksheetFunction.Subtotal(103, .Cells.Resize(, 1))
If rCount > 1 Then
Dim srg As Range
Set srg = irg.Resize(irg.Rows.Count - 1).Offset(1) _
.SpecialCells(xlCellTypeVisible)
ws.AutoFilterMode = False
irg.Rows(2).Resize(rCount - 1).Insert
srg.Copy irg.Rows(2).Resize(rCount - 1)
srg.Delete
rowsMoved = True
End If
End With
Application.ScreenUpdating = True
If rowsMoved Then
MsgBox "Rows moved.", vbInformation, "Success"
Else
MsgBox "Nothing moved.", vbExclamation, "Fail?"
End If
End Sub
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | Alexey |
| Solution 2 | VBasic2008 |
