Нам нужна программа, которая удаляет все строки со значениями в ячейке 6, например, 2,3,4,5 и так далее, из столбца F1 и не удаляет значение 1? - PullRequest
0 голосов
/ 09 июля 2020

Нам нужна программа, которая удаляет все строки со значениями в ячейке 6, например, 2,3,4,5 и так далее, из столбца F1 и оставляет только строки со значением 1 и слышала о первой строке в верхней части таблицы? Также нам нужно оставить первую строку нетронутой с услышанной таблицей. Почему этот код работает неправильно, потому что он не удаляет 10 100, а удаляет только 2,3,4,5 и т. Д.

 Sub RemoveRows1()
    
     ThisWorkbook.ActiveSheet.Cells.ClearFormats
    Dim m As Long
    
    m = 1
  Do While m <= ThisWorkbook.ActiveSheet.Range("F1").CurrentRegion.Rows.Count  
    If not InStr(1, Thisworkbook.Activesheet.cells(m,6).value = 1) > 0 Then 
    ThisWorkbook.ActiveSheet.Cells(m, 6).EntireRow.Delete

    
        Else
            m = m + 1
        End If
    
    Loop
    End Sub

1 Ответ

1 голос
/ 09 июля 2020

Вместо этого огромного if в l oop просто используйте

If not InStr(1, ThisWorkbook.ActiveSheet.Cells(m, 6).Text, "1", vbTextCompare) > 0 Then 
    ThisWorkbook.ActiveSheet.Cells(m, 6).EntireRow.Delete
End If

И это удалит всю строку всего, где столбец F не содержит 1.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...