Ik wil een VLOOKUP functie toepassen in VBA (Excel 2007). Dit werkt prima zolang de gezochte waarde wordt gevonden in de referentietabel. Wanneer de waarde echter niet wordt gevonden krijg ik een foutmelding: "Fout 1004: Eigenschap Vlookup van klasse WorksheetFunction kan niet worden opgehaald."
Op zich logisch. Excel zal "#N/A" teruggeven, maar VBA staat dit niet toe en geeft een foutmelding.
Ik heb op internet gezocht en daar worden 2 oplossingen aangedragen om met deze foutmelding om te gaan.
Gecombineerd met mijn code ziet dat er als volgt uit:
of:
Helaas werken beide oplossingen niet voor mij.
(Ook niet wanneer ik in de 1e code regels 4 en 5 combineer; dus: If iserror((Vlookup) then 'MsgBox' else 'Vlookup'))
Hoe los ik dit op?
Op zich logisch. Excel zal "#N/A" teruggeven, maar VBA staat dit niet toe en geeft een foutmelding.
Ik heb op internet gezocht en daar worden 2 oplossingen aangedragen om met deze foutmelding om te gaan.
Gecombineerd met mijn code ziet dat er als volgt uit:
code:
1
2
3
4
5
6
| Sub Contract_Ophalen On Error Resume Next Contract_Type = Application.WorksheetFunction.VLookup(Val(Contract_Num), Worksheets("Contract").Range("E2:K1000"), 7, False) If IsError(Contract_Type) Then MsgBox "Not found" End Sub |
of:
code:
1
2
3
4
5
6
| Sub Contract_Ophalen On Error Resume Next Contract_Type = Application.WorksheetFunction.VLookup(Val(Contract_Num), Worksheets("Contract").Range("E2:K1000"), 7, False) If Err.Number <> 0 Then MsgBox "Not found" End Sub |
Helaas werken beide oplossingen niet voor mij.
(Ook niet wanneer ik in de 1e code regels 4 en 5 combineer; dus: If iserror((Vlookup) then 'MsgBox' else 'Vlookup'))
Hoe los ik dit op?