Не уверен, имеет ли вопрос смысл, но объясню позже. У меня есть два набора данных на разных вкладках Excel, один с номерами оборудования, а другой со всей соответствующей информацией (заказы на работу, приоритеты и т. Д. c.) Однако есть номера оборудования с несколькими записями на другой вкладке. Например, номер оборудования 526176 появляется два раза. Он имеет два разных номера заказа на работу: 6852132 и 6852135 . Однако мой код, который просматривает каждый лист в цикле, чтобы найти, где информация совпадает, и вводит данные на новой вкладке, вводит только последний экземпляр и дважды показывает задание 6852135. То же самое и с другими. Я знаю, что это связано с r = r + 1, но не знаю, как это сделать. Вот что выводит код , Вот скриншот вкладки «Dept Master» и Вот вкладка «Sheet1» со всей информацией о номере оборудования . Вот мой код:
Sub test6()
Dim sheet1range As Range, masterrange As Range, eqtnumber As Variant, eqtnumber2 As Variant
r = 0
Workbooks("S1 PM Equipment List of JDE Numbers - Master Tool 6-24-2020").Activate
Sheets("Sheet1").Select
Set sheet1range = Sheets("Sheet1").Range(Range("H2"), Range("H2").End(xlDown))
Sheets("Dept Eqt Master").Select
Set masterrange = Sheets("Dept Eqt Master").Range(Range("A2"), Range("A2").End(xlDown))
For Each eqtnumber In masterrange
For Each eqtnumber2 In sheet1range
If eqtnumber = eqtnumber2 Then
Workbooks("Shelby Site Equipment").Sheets("Sheet3").Range("A1").Offset(r, 5).Value = eqtnumber2.Offset(0, -7)
Workbooks("Shelby Site Equipment").Sheets("Sheet3").Range("A1").Offset(r, 6).Value = eqtnumber2.Offset(0, -5)
Workbooks("Shelby Site Equipment").Sheets("Sheet3").Range("A1").Offset(r, 7).Value = eqtnumber2.Offset(0, -2)
Workbooks("Shelby Site Equipment").Sheets("Sheet3").Range("A1").Offset(r, 8).Value = eqtnumber2.Offset(0, -1)
End If
Next eqtnumber2
r = r + 1
Next eqtnumber
Call Macro4
Sheets("Sheet3").Name = "S1 PM Eqt"
End Sub