2017-01-03 2 views
0

У меня есть таблицы, в которых указаны даты в столбце A, ex 12/1/2016 1:45:00 AM. Я переформатирую все ячейки в этой колонке, чтобы они отображали День, месяц #, год. Пример Thursday, December 01, 2016. Функция Find работает, если я нажимаю на кнопку фактического поиска и ищу значения, однако я изо всех сил пытаюсь ее кодировать. Я хочу удалить все строки, содержащие «субботу» и «воскресенье». Последний код, который я пробовал, выглядит следующим образом.Удалить целую строку на основе части значения ячейки

Last = Cells(Rows.Count, "D").End(xlUp).Row 
For i = Last To 1 Step -1 
    If (Cells(i, "D").Value) = "*Saturday*" Then 
Cells(i, "A").EntireRow.Delete 
    End If 
Next i 

Я также пробовал использовать следующий код:

Set Find = Range("A:A").Find("Saturday", LookIn:=xlValues) 
Do Until Find Is Nothing 
    Find.EntireRow.Delete 
    Set Find = Range("A:A").FindNext 
Loop 
+0

Использование 'Like':' Если (. Cells (я, "D") Value) Like "* суббота *" затем' –

ответ

0

Изменить

If (Cells(i, "D").Value) = "*Saturday*" Then` 

к

If (Cells(i, "D").Text) Like "*Saturday*" Then 

Использование Text вместо Value будет иметь доступ к отображаемое значение, а не базового значения (которое является дата), а также с использованием Like вместо = позволит использовать шаблоны.


Ваш вопрос запутанный, какой столбец дата в. Некоторые из вашего кода (и ваш вопроса) предполагает, что они находятся в колонке А, но и другие части вашего кода предложить столбец D. Если они находятся в столбец A, измените код выше, чтобы использовать "A" вместо "D".

1

Установите LookAt параметр для xlPart

Find("Saturday", , , xlPart) 
+1

Ааа - я забыл, что 'Find'" запоминает ", какие параметры он использовал в последний раз. Таким образом, опускание 'LookAt: = xlPart' будет работать, если бы OP ранее делал ручной поиск« Find », но не работал, если их предыдущая находка была для« xlWhole ». Это объясняет, почему код OP работал для меня. – YowE3K

+0

Да, это один из забавных бит. :) Надежный подход состоит в том, чтобы сохранить текущие настройки, запустить метод поиска и выполнить его сброс. – cyboashu

Смежные вопросы