У меня есть макрос со всеми задачами, которые я должен выполнить для создания отчета, в настоящее время мне нужно объединить новые данные из нового листа в исходный. Что-то вроде JOIN, если бы мы могли так это назвать.
В srcWorkbook
у нас есть такие вещи, как адрес, кто отвечал за это время и метка времени date / id. В outWorkbook
есть личные данные продавца и тому подобное.
Таблица вывода / Новая таблица данных / Таблица вывода (после запуска макроса)
Чтобы объединить оба листа, я хочу сопоставить id_date
и id_hr
в обоих файлах, так что если srcWorkbook
и outWorkbook
id совпадают, возьмите строку srcWorkbook
и вставьте ее на стороне outWorkbook
.
Я пытался сделать оператор for / if, который явно читает, но он не вставляет новые строки. Я также попробовал VLOOKUP, но я предпочел бы придерживаться базовых утверждений для будущих модификаций.
Sub popularSubG()
'File calling here and index variables
'Cells
' cell Src
Dim cellSrcPerPro As Long
Dim cellSrcIDHR As Long
' cell Out
Dim cellOutPerPro As Long
Dim cellOutIDHR As Long
For indexRowSrc = 2 To indexLastRowSrc
cellSrcPerPro = srcWorkbook.Cells(indexRowSrc, "A").Value
cellSrcIDHR = srcWorkbook.Cells(indexRowSrc, "B").Value
cellOutPerPro = outWorkbook.Cells(indexRowSrc, "A").Value
cellOutIDHR = outWorkbook.Cells(indexRowSrc, "B").Value
If cellSrcPerPro = cellOutPerPro & cellSrcIDHR = cellDestinoIDHR Then
indexRowOut = indexRowOut + 1
srcWorkbook.Sheets(1).Cells(2, "C").EntireRow.Copy Destination:=outWorkbook.Sheets(1).Range("O" & Rows.Count).End(xlUp).Offset(0)
End If
Next indexRowSrc
MsgBox "Sub ended"
End Sub