Удаление строк если не подходит по условию - VBA

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

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

Доброго! Появилась задачка: Имеется диапазон ячеек в таблице Excel в одном столбце (например, А1-А19568). В каждой ячейке этого диапазона есть шестнадцатизначное число. Есть функция:
Листинг программы
  1. Function Fun2(num$) As Boolean
  2. Dim i%, sum%, p%
  3. For i = 1 To Len(num)
  4. p = Mid$(num, i, 1) * (i Mod 2 + 1)
  5. sum = sum + IIf(p > 9, p - 9, p)
  6. Next i
  7. Fun2 = sum Mod 10 = 0
  8. End Function
Подскажите, пожалуйста, как удалить все строки с ячейками значение которых false.

Решение задачи: «Удаление строк если не подходит по условию»

textual
Листинг программы
  1. Private Sub Test()
  2.     Application.ScreenUpdating = False
  3.    
  4.     Dim iArr, iRow&, tmp$, c$: c = String(16, "0")
  5.    
  6.     iArr = Range("A1", Cells(Rows.Count, 1).End(xlUp)).Value
  7.     For iRow = UBound(iArr, 1) To 1 Step -1
  8.         tmp = Format(iArr(iRow, 1), c)
  9.         If Not Luna2(tmp) Then Rows(iRow).Delete
  10.     Next
  11.    
  12.     Application.ScreenUpdating = True
  13. End Sub

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


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

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

15   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы