Последний ряд вопросов - PullRequest
       11

Последний ряд вопросов

0 голосов
/ 02 ноября 2018

У меня проблемы с последним выражением строки и автозаполнением. Я не уверен, что мне здесь не хватает, так как он выглядит правильно, но, похоже, он не запускает vlookup в соответствующей ячейке (N2, он запускает его в N1) и не заполняется автоматически до последнего ряда М. Любой толчок в правильном направлении будет принята с благодарностью. Я думаю, что это что-то маленькое, что я пропускаю.

 Sub Nightly()
 '
 ' Nightly Macro
 '
Dim PackSpec As Workbook
Dim FullBook As Workbook
Dim DebFile As Workbook
Dim lrow As Long

lrow = Cells(Rows.Count, 1).End(xlUp).Row


'Open the nightly pack spec file, cut and insert the year row into column D
Set PackSpec = Workbooks.Open("S:\Accounting\Apps\Packspec\CIDExport\Archive\" & Year(Date) & "\" & Month(Date) & "\" & Day(Date) - 1 & "\*.csv")
Columns("A:A").Select
Selection.Cut
Columns("D:D").Select
Selection.Insert Shift:=xlToRight
Range("A2").Select

'Open Fullbook master and insert columns after N then VLookup between Pack Spec and Fullbook
Set FullBook = Workbooks.Open("S:\Corporate\Groups\Comosoft\Downloads\FullBook\fullbook_Master.csv")
Columns("N:U").Select
Selection.Insert Shift:=xlToRight
Range("N2").Select

'Actvate Fullbook and enter Vlookup for dates
Windows("fullbook_Master.csv").Activate
With ActiveSheet.Range("N2")
.FormulaR1C1 = "=VLOOKUP(RC[-1],'[15.50.1.CID.csv]15.50.1.CID'!C[-13]:C[-11],3,0)"
.AutoFill Destination:=Range("N2:N" & lrow) 'issue not autofilling to end
Windows("fullBook_Master.csv").Activate
End With

 End Sub

Ответы [ 2 ]

0 голосов
/ 04 ноября 2018

Вы должны:

Ссылка lrow на лист, чтобы избежать ошибок. Избегайте всех выборов.

 Sub Nightly()
 '
 ' Nightly Macro
 '
Dim PackSpec As Workbook
Dim FullBook As Workbook
Dim DebFile As Workbook
Dim lrow As Long
Dim ws As Worksheet, wsPackSpec As Worksheet

Set ws = Activesheet
'Or set ws = Sheets("Sheet1") - better


'Open the nightly pack spec file, cut and insert the year row into column D
Set PackSpec = Workbooks.Open("S:\Accounting\Apps\Packspec\CIDExport\Archive\" & 
Year(Date) & "\" & Month(Date) & "\" & Day(Date) - 1 & "\*.csv")
Set wsPackSpec = PackSpec.Sheets(1)
wsPackSpec.Columns(1).Value = wsPackSpec.Columns(4).Value
wsPackSpec.Columns(1).EntireColumn.Delete

'Open Fullbook master and insert columns after N then VLookup between Pack Spec and Fullbook
'Apply same principle as above here
Set FullBook = Workbooks.Open("S:\Corporate\Groups\Comosoft\Downloads\FullBook\fullbook_Master.csv")
Columns("N:U").Select
Selection.Insert Shift:=xlToRight
Range("N2").Select

'Actvate Fullbook and enter Vlookup for dates
Windows("fullbook_Master.csv").Activate
Set ws = ActiveSheet 'Set like this, but you should designate the correct worksheet in the fullbook part above
lrow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row

With ws
    .Cells(2, 14).FormulaR1C1 =   "=VLOOKUP(RC[-1],'[15.50.1.CID.csv]15.50.1.CID'!C[-13]:C[-11],3,0)"
    .Cells(2, 14).AutoFill Destination:=.Range(.Cells(2, 14), .Cells(lrow, 14))
End With    

 End Sub

Как-то так, не смог протестировать подробно, потому что мне не хватает обзора того, как устроены книги.

0 голосов
/ 04 ноября 2018

Просто переместите

lrow = Cells(Rows.Count, 1).End(xlUp).Row

после

Windows("fullbook_Master.csv").Activate
...