Sziasztok!
Kéne egy kis segítség :-).
VBA-ban egy loopos VlookUp és egy primko kivonás kifogott rajtam.
A misszió, hogy a CheckFile fájlba beírjon egy Vlookupot összekötve a fájlt a PriceList fájllal. Mindezt loop-pal.
vRng hivatott leegyszerűsteni a dolgot, de azt írja ki az excel a vlookup függvényre hogy "NAME?"...szóval nem érti. Én sem.
Minden remekül működik. El is kezdi beírni a Vlookupot, de nem tudja értelmezni. Én meg nem értem mit nem ért.
Ti értitek?
Bocsánat kicsit hosszú a macro...
Előre is köszönöm a segítségeteket!!
-------------------------------------
Sub teszt2()
Dim wbPriceList As Workbook
Dim wbCheckFile As Workbook
Dim rWorkRange As Range
Dim vRng As Range
Dim x As Long
MsgBox "Open the file you want to check!"
Application.Dialogs(xlDialogOpen).Show
Set wbCheckFile = ActiveWorkbook
MsgBox "Open the PriceList!"
Application.Dialogs(xlDialogOpen).Show
Set wbPriceList = ActiveWorkbook
Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
x = wbCheckFile.Worksheets.Count
For i = 1 To x
wbCheckFile.Worksheets(i).Range("B:B").Insert Shift:=xlToRight
wbCheckFile.Worksheets(i).Range("B1") = "UniqueCode"
Set rWorkRange = wbCheckFile.Worksheets(i).Range("A2")
Do While rWorkRange.Value <> Empty
rWorkRange.Offset(0, 1).Value = "=RC[21]&""_""&RC[24]&""_""&RC[26]&"" Q""&ROUNDUP(MONTH(RC[6])/3,0)&"" ""&YEAR(RC[6])"
Set rWorkRange = rWorkRange.Offset(1, 0)
Loop
Next i
For i = 1 To x
wbCheckFile.Worksheets(i).Range("B:B").Copy
wbCheckFile.Worksheets(i).Range("B:B").PasteSpecial xlPasteValues
wbCheckFile.Worksheets(i).Range("L:M").Insert Shift:=xlToRight
wbCheckFile.Worksheets(i).Range("O:P").Insert Shift:=xlToRight
wbCheckFile.Worksheets(i).Range("L1") = "PriceList.LaborPrice"
wbCheckFile.Worksheets(i).Range("M1") = "Diff"
wbCheckFile.Worksheets(i).Range("O1") = "PriceList.PartsPrice"
wbCheckFile.Worksheets(i).Range("P1") = "Diff"
Next i
wbPriceList.Worksheets(1).Range("B:B").Insert Shift:=xlToRight
wbPriceList.Worksheets(1).Range("B2") = "UniqueCode"
Range("A3").Select
Do While ActiveCell.Value <> Empty
ActiveCell.Offset(0, 1).Value = "=RC[5]&""_""&RC[4]&""_""&RC[-1]"
ActiveCell.Offset(1, 0).Select
Loop
wbPriceList.Worksheets(1).Range("B:B").Copy
wbPriceList.Worksheets(1).Range("B:B").PasteSpecial xlPasteValues
For i = 1 To x
Set rWorkRange = wbCheckFile.Worksheets(i).Range("B2")
Set vRng = wbPriceList.Worksheets(1).Range("B:M")
Do While rWorkRange.Value <> Empty
rWorkRange.Offset(0, 10).Value = "=VLOOKUP(RC[-10],vRng,10,0)"
rWorkRange.Offset(0, 11).Value = rWorkRange.Offset(0, 9).Value - rWorkRange.Offset(0, 10).Value
Set rWorkRange = rWorkRange.Offset(1, 0)
Loop
Next i
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub