Повторяющиеся значения - VBA (48724)
Формулировка задачи:
Здравствуйте.
Нужна Ваша помощь. Имеется файл, на двух разных листах содержатся записи и надо найти повторяющиеся элементы, выставить пометки да/нет. Да, если запись повторяется, нет, если запись не повторяется. В файле повторяющиеся элементы 3 и 5 записи, а пометки выставляются для всех как нет.
Пример_1.xlsx
Решение задачи: «Повторяющиеся значения»
textual
Листинг программы
Sub CompareRows() Dim S1 As String, S2 As String, Iz1 As Integer, Iz2 As Integer Dim LastRow As Long, I As Long, J As Integer, TF As Boolean Sheets(1).Activate LastRow = ActiveSheet.UsedRange.Row + _ ActiveSheet.UsedRange.Rows.Count - 1 For I = 1 To LastRow If Cells(I, 1) <> "" Then 'пропускаем пустые строки TF = True For J = 1 To 4 S1 = Trim(Cells(I, J)): S2 = Trim(Sheets(2).Cells(I, J)) Iz1 = InStr(S1, "*"): Iz2 = InStr(S2, "*") If Iz1 + Iz2 = 0 Then 'нет звёзд If S1 <> S2 Then TF = False: Exit For End If Else If Iz1 = 0 Or (Iz2 > 0 And Iz2 < Iz1) Then Iz1 = Iz2 Iz1 = Iz1 - 1 If Iz1 > 0 Then 'есть текст + звезда If Left(S1, Iz1) <> Left(S2, Iz1) Then TF = False: Exit For End If End If End If Next Cells(I, 6) = IIf(TF, "Да", "Нет") End If Next End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д