16. januar 2009 - 16:10
Der er
4 kommentarer og
1 løsning
Variabel i range
Hejsa
Jeg har brug for at kunne variere min range, da antallet af linier kan variere.
Min kode ser således ud:
*****
Set MyRange = Sheets("Vendors").Range("A2:B6512")
*****
Det er tallet 6512 jeg gerne vil kunne bytte ud med en variabel.
Er der nogen der kan hjælpe?
16. januar 2009 - 16:12
#2
Hele koden ser således ud:
*********************
Sub VLookUpVendors()
Dim rowCheck As Long
Dim MyRange As Range
Dim mySource As Range
Dim myOpslag As String
Windows(DataWorkbookName).Activate
Sheets(DataSheetName).Activate
'Sheets("sheet3").Select 'Det letteste er at skifte til arbejdsarket hvor resultatet skal posteres
With Sheets(DataSheetName)
On Error Resume Next 'VIGTIG - Sørger for at koden ikke går kold hvis der ikke er et resultat af VLookUp funktionen
For rowCheck = Range("A2").End(xlDown).Row To 2 Step -1 'Loopet springer til den nederste række i kolonne A, og kører loop op til og med række 2.
Set MyRange = Sheets("Vendors").Range("A2:B6512") 'Her sættes området hvori der skal laves opslag
Set mySource = Sheets(DataSheetName).Cells(rowCheck, "B") 'Her defineres hvad der skal ledes efter
myOpslag = Application.WorksheetFunction.VLookUp(mySource, MyRange, 2, False) 'Selve opslaget - Husk at ændre 2-tallet, hvis der er mere end to kolonner.
Sheets(DataSheetName).Cells(rowCheck, "C") = myOpslag 'resultatet af opslag publiceres
myOpslag = "#N/A" 'Hvis der ikke er noget resultat, vises #N/A. Kan ændres til hvad som helst.
Next rowCheck
End With
End Sub