Очистка ячеек, содержащих не повторяющиеся значения (код) - VBA

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

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

Всем привет! Нужно очистить ячейки (без удаления строк, без УФ), расположенные последовательно в одном столбце, первые два символа которых не равны первым двум символам верхней ячейки, то есть попарное сравнение и очистка данных при неравенстве первых двух символов. Символы цифровые. Пример: 7846769 7398068

66067568

669-86

5285547

5257075

52357956

919774

99906464

998468

4334375

5568357

558667

55796767468

557077456

487984 324008686 5257058

44679784

44870667

448-6785

267806785

2697-7986

099666750

390-786

39437468

5576 В столбце должны быть удалены все значения, кроме значений с жирным шрифтом.

Решение задачи: «Очистка ячеек, содержащих не повторяющиеся значения (код)»

textual
Листинг программы
  1. Sub bb()
  2. Dim f(), i&
  3.   With ActiveSheet.UsedRange.Columns(1)
  4.     f = .Formula
  5.     If Left$(f(1, 1), 2) <> Left$(f(2, 1), 2) Then 'первый
  6.      f(1, 1) = vbNullString
  7.     End If
  8.     For i = 2 To UBound(f) - 1
  9.       If Left$(f(i, 1), 2) <> Left$(f(i - 1, 1), 2) And Left$(f(i, 1), 2) <> Left$(f(i + 1, 1), 2) Then
  10.         f(i, 1) = vbNullString
  11.       End If
  12.     Next
  13.     If Left$(f(i, 1), 2) <> Left$(f(i - 1, 1), 2) Then 'последний
  14.      f(i, 1) = vbNullString
  15.     End If
  16.     .Formula = f
  17.   End With
  18. End Sub

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


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

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

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

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

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

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