Удалить ячейки не содержащие нужной информации в столбце C - VBA

Узнай цену своей работы

Формулировка задачи:

Добрый день! Имеется excel файл напечатанного ниже формата:

Все ячейки

- Информация о товаре;

Столбец "C"

- Статус о наличии товара; Напишите пожалуйста макрос который проверит

столбец "C"

на присутствие в ячейках слов и словосочетаний, -

"Нет"

,

"Нет в наличии"

,

"Под заказ"

-

при отсутвии таковых, необходимо удалить строку со сдвигом вверх

. Пример файла во вложении, в нем представлена страница

"Исходник"

и страница

"Необходимый результат"

. Ниже печатаю пример, страницы исходник: 1. [A] 2 [B] Нет [C] Нет [D] Да [E] [F] 2. [A] 3 [B] Да [C] 0 [D] [E] [F] Нет 3. [A] 6 [B] Да [C] 10 [D] [E] [F] 4. [A] 0 [B] Заказ [C] Нет в наличии [D] [E] [F] 5. [A] Б [B] [C] - [D] [E] [F] 6. [A] А [B] Заказ [C] Под заказ [D] Нет [E] [F] Ниже печатаю пример, страницы необходимый результат: 1. [A] 2 [B] Нет [C] Нет [D] Да [E] [F] 2. [A] 0 [B] Заказ [C] Нет в наличии [D] [E] [F] 3. [A] А [B] Заказ [C] Под заказ [D] Нет [E] [F]

Решение задачи: «Удалить ячейки не содержащие нужной информации в столбце C»

textual
Листинг программы
Private Sub Test()
    Dim iArr, iRow&
    iArr = Array("Нет", "Нет в наличии", "Под заказ") 'Array("Нет*", "Под заказ")
    
    With Application
         .ScreenUpdating = False
         For iRow = Cells(Rows.Count, 3).End(xlUp).Row To 1 Step -1
             If .Sum(.CountIf(Cells(iRow, 3), iArr)) = 0 Then Rows(iRow).Delete
         Next
         .ScreenUpdating = True
    End With
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.733 из 5
Похожие ответы