Page 1 of 1

ค้นหาเจอ แล้ว ลบทั้งแถว

Posted: Sat Oct 27, 2012 7:36 pm
by beermem
Sub Macro1()

Cells.Find(What:="12345", After:=ActiveCell, LookIn:=xlFormulas, LookAt _ :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _False, SearchFormat:=False).Activate
Selection.EntireRow.Delete Shift:=xlUp

End Sub


อันนี้เจอ 12345 แล้วลบทั้งแถว แค่ครั้งเดียว

แต่จะเขียนให้มันค้นหาเจอแล้วลบไปเรื่อยๆนะครับเขียนยังไงอะครับ-*-

Re: ค้นหาเจอ แล้ว ลบทั้งแถว

Posted: Sat Oct 27, 2012 8:23 pm
by snasui
:D ลองดูตัวอย่างตามด้านล่างเป็นตัวอย่างการใช้ FindNext เข้ามาช่วยใน Code เดิมที่เขียนมาครับ

Code: Select all

Sub Macro1()
   On Error Resume Next
    With Sheets("Sheet1").Range("a1:a100")
        Set c = .Find(What:="12345", After:=ActiveCell, _
            LookIn:=xlFormulas, LookAt:=xlPart, _
            SearchOrder:=xlByRows, SearchDirection:=xlNext, _
            MatchCase:=False, SearchFormat:=False)
        If Not c Is Nothing Then
            firstaddr = c.Address
            Do
                c.Value = ""
                Set c = Cells.FindNext(c)
            Loop While Not c Is Nothing And c.Address <> firstaddr
        End If
    End With
    Sheets("Sheet1").Range("a1:a100").SpecialCells( _
        xlCellTypeBlanks).EntireRow.Delete
End Sub