Как сопоставить даты, а затем скопировать соответствующие данные из одной электронной таблицы в другую, если даты повторяются, но данные уникальны? - PullRequest
0 голосов
/ 30 мая 2019

Я хотел бы найти в электронной таблице отчетности (1) дату, а затем выполнить поиск этой даты в электронной таблице источника данных (2). После обнаружения я хотел бы скопировать и вставить данные (из той же строки, что и дата в (2)) в соответствующую дату в электронной таблице отчетности (1).

Однако, существует несколько повторений каждой даты (как в 1, так и в 2), но все данные, соответствующие соответствующим датам (в электронной таблице 2), являются уникальными, поэтому я хотел бы найти соответствующую дату, а затем скопировать и вставить данные в соответствующую строку, но затем не использовать эту же строку снова и перейти к следующему совпадению ...

В настоящее время мой макрос копирует данные из (2) в (1) в соответствии с датой сопоставления, но если имеется 6 повторений даты, для всех строк используется только шестое совпадение дат (с соответствующими данными).

Sub Macroturnip()
'
' Macroturnip Macro
'

Dim Row As Double 'row is the row variable for the destination spreadsheet
Dim i As Date
Dim x As Long 'x is the row variable for the source spreadsheet


For Row = 1 To 825

    i = Sheets("1").Cells(Row, 1)

      If i <> DateSerial(1900, 1, 0) Then
        'DateSerial(1900, 1, 0) --> this is the default for no data in the field, i.e. i want to skip these

            For x = 1 To 450

                If Sheets("2").Cells(x, 2) = Sheets("1").Cells(Row, 1) Then
                Sheets("2").Select
                Cells(x, 1).Select
                Selection.Copy
                Sheets("1").Select
                Cells(Row, 2).Select
                ActiveSheet.Paste

                End If

            Next x



     End If



Next Row


End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...