VLOOKUP с предыдущего листа - PullRequest
0 голосов
/ 14 января 2020

Я потратил несколько часов, пытаясь понять, как написать правильный код, чтобы мне не приходилось менять его каждый месяц. Я пытаюсь сделать vlookup из листа предыдущих месяцев. Я нашел сайт, который сказал использовать "& ActiveSheet.Previous.Name &". Когда я использую это, я близко, но это вызывает окно открытия файла. Я выбираю текущий файл, а затем он выбирает лист. В конечном итоге код в ячейке в конечном итоге становится = IFERROR (VLOOKUP (L4, '[De c] De c'! $ L: $ A C, 12, FALSE), "") вместо = IFERROR (ВПР (L4, De c $ L! $ A C 12, FALSE), ""). Как мне избежать выбора текущего файла и листа? Мой код ниже.

Ваша помощь будет принята с благодарностью!

Sub Justification()

Application.ScreenUpdating = False 

Dim lastrow As Long 
Dim i As Integer 

lastrow = Range("E" & Rows.Count).End(xlUp).Row  

Range("J3:J" & lastrow).FormulaR1C1 = "=VLOOKUP(RC[-4],'V:\CORPDATA02\D0003\ISSHARE\Accruals\2020\[Justification.xlsx]sheet1'!C1:C6,6,FALSE)" 
Range("L3:L" & lastrow).FormulaR1C1 = "=RC[-1]&RC[-4]" 
Range("U3:U" & lastrow).FormulaR1C1 = "=RC[-2]-RC[-1]" 
Range("V3:V" & lastrow).FormulaR1C1 = "=IF(SUMIF(C[-14],RC[-14],C[-1])<25000,""UNDER 25K"",""YES"")"

Range("W3:W" & lastrow).FormulaR1C1 = "=IFERROR(VLOOKUP(RC[-11],' " & ActiveSheet.Previous.Name & " '!C12:C29,12,FALSE),"""")" 

For Each Cell In Range("Y3:Y" & lastrow) 
If Cell = "0" Then Cell.Clear
Next Cell 

Application.ScreenUpdating = True

End Sub
...