При использовании VBA мой код не выполняется в первый раз, и условие "true" - PullRequest
0 голосов
/ 11 марта 2019

Копирование 2 столбцов данных из второй электронной таблицы (интерфейсы GL), когда идентификаторы на 2 листах совпадают.Я прошел по коду, и код выполняется, который фиксирует значения и печатает до места назначения, за исключением того, что ничего не печатает в G2 a & H2.Есть значения, которые следует печатать, но нет.Печатается каждая вторая строка.

Почему при первом выполнении значения не выводятся?На самом деле, значения появлялись один раз после второго выполнения.

Но когда я сбрасываю целевые столбцы пустыми и повторяю попытку, значения из первой оценки true не будут отображаться в их целевых столбцах.

Почему?

Sub Import_Data()

    Dim lastRw1, lastRw2, nxtRw, m, lastColumn, rowCol

    'Determine last row with data, Sheet1
    lastRw1 = Sheets("Sheet1").Range("A" & Rows.Count).End(xlUp).Row
    'Determine last row with data, Import
      lastRw2 = Sheets("GL Interfaces").Range("A" & Rows.Count).End(xlUp).Row

    'Last Column
     With ActiveSheet
        lastColumn = .Range("A1").SpecialCells(xlCellTypeLastCell).Column
     End With
     MsgBox lastColumn '=> returns 36

    'Heading
     Range("A1:H1").HorizontalAlignment = xlCenter
     Range("A1:H1").HorizontalAlignment = xlCenter
     Range("A1:H1").Interior.Color = RGB(169, 208, 142)
     Range("A1:H7172").Font.Color = RGB(0, 0, 0)

    'Body
     Range("A1:H7172").HorizontalAlignment = xlCenter
     Range("A1:H7172").Font.Color = RGB(0, 0, 0)

    'Loop through Sheet1, Column A
     For nxtRw = 2 To lastRw2
    'Search Sheet1 Column A for value from GL Interfaces
        With Sheets("Sheet1").Range("A2:A" & lastRw1)
            Set m = .Find(Sheets("GL Interfaces").Range("A" & nxtRw), LookIn:=xlValues, lookat:=xlWhole)
            'Copy GL Interfaces row if match is found
            If Not m Is Nothing Then
                Sheets("GL Interfaces").Range("E" & nxtRw & ":F" & nxtRw).Copy _
                Destination:=Sheets("Sheet1").Range("G" & m.Row)
            End If
        End With
     Next

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