ماکروی حذف کلمه های خاص از یک ستون

Collapse
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • Rosa_
    • 2020/01/23
    • 2

    پرسش ماکروی حذف کلمه های خاص از یک ستون

    سلام دوستان. من یه کد ماکرو از نت گرفتم که میاد توی یک ستون خاص مثلا ستون D دنبال کلمه خاصی میگرده و بعد سطرهای مربوطه اش رو حذف میکنه.
    حالا میخوام چند تا کلمه رو با هم بهش بدم تا برام حذف کنه، نمیخوام برای هر کلمه کد رو جداگانه اجرا بگیرم. چطوری امکان پذیره؟ کد رو میفرستم

    مثلا کلمه های firefox - imported - toread هم بهش اضافه شه

    ممنون میشم کسی جواب بده. خیلی برام مهمه
    فایل های پیوست شده
    Last edited by Rosa_; 2020/01/30, 11:06.
  • M_ExceL

    • 2018/04/23
    • 677

    #2
    نوشته اصلی توسط Rosa_
    سلام دوستان. من یه کد ماکرو از نت گرفتم که میاد توی یک ستون خاص مثلا ستون D دنبال کلمه خاصی میگرده و بعد سطرهای مربوطه اش رو حذف میکنه.
    حالا میخوام چند تا کلمه رو با هم بهش بدم تا برام حذف کنه، نمیخوام برای هر کلمه کد رو جداگانه اجرا بگیرم. چطوری امکان پذیره؟ کد رو میفرستم

    مثلا کلمه های firefox - imported - toread هم بهش اضافه شه

    ممنون میشم کسی جواب بده. خیلی برام مهمه
    سلام،
    کد:
    [SIZE=3]
    Sub DeleteRow()
    
        Dim Firstrow As Long
        Dim Lastrow As Long
        Dim Lrow As Long
        Dim itm As Variant
        Dim arrv(1 To 5) As String
        
        arrv(1) = "2005"
        arrv(2) = "toread"
        arrv(3) = "imported"
        arrv(4) = "firefox"
        arrv(5) = "2009"
    
        With ActiveSheet
            Firstrow = .UsedRange.Cells(1).Row
            Lastrow = .UsedRange.Rows(.UsedRange.Rows.Count).Row
            For Lrow = Lastrow To Firstrow Step -1
                With .Cells(Lrow, "D")
                    For Each itm In arrv
                        If CStr(.Value) = itm Then
                            .EntireRow.Delete
                            Exit For
                        End If
                    Next
            End With
            Next Lrow
        End With
        
    End Sub
    [/SIZE]
    [CENTER]Telegram Channel : [url]https://t.me/UltraOfficeSkills[/url]
    [/CENTER]

    کامنت

    • Rosa_
      • 2020/01/23
      • 2

      #3
      خیلی ممنون که اینقدر سریع جواب دادین.
      اگه بخوام اون سطرها رو برام حذف نکنه، عوضش اون سطرها رو رنگی کنه کدش چطوری میشه؟

      کامنت

      • M_ExceL

        • 2018/04/23
        • 677

        #4
        کد:
        Sub DeleteRow()
        
            Dim Firstrow As Long
            Dim Lastrow As Long
            Dim Lrow As Long
            Dim itm As Variant
            Dim arrv(1 To 5) As String
            
            arrv(1) = "2005"
            arrv(2) = "toread"
            arrv(3) = "imported"
            arrv(4) = "firefox"
            arrv(5) = "2009"
        
            With ActiveSheet
                Firstrow = .UsedRange.Cells(1).Row
                Lastrow = .UsedRange.Rows(.UsedRange.Rows.Count).Row
                For Lrow = Lastrow To Firstrow Step -1
                    With .Cells(Lrow, "D")
                        For Each itm In arrv
                            If CStr(.Value) = itm Then
                                Cells(Lrow, "D").Interior.ColorIndex = 3
                                Exit For
                            End If
                        Next
                End With
                Next Lrow
                
            End With
            
        End Sub
        [CENTER]Telegram Channel : [url]https://t.me/UltraOfficeSkills[/url]
        [/CENTER]

        کامنت

        • Amir Ghasemiyan

          • 2013/09/20
          • 4598
          • 100.00

          #5
          دوست عزيز اگر پاسخ سوالتون رو دريافت كرديد لطفا تاپيك رو حل شده كنيد

          کامنت

          چند لحظه..