Vlookup geeft foutmelding

Status
Niet open voor verdere reacties.

SjonR

Verenigingslid
Lid geworden
10 nov 2016
Berichten
3.318
Goedemorgen,

Ik gebruik onderstaande code in een userform. Dit werkt perfect in excel 2016, maar als ik het bestand op excel 2010 gebruik, dan komt er telkens een foutmelding. Hij loopt vast op de eerste VLookupregel. Daarna werkt excel niet meer en wordt excel opnieuw opgestart.

heeft iemand een idee waar het fout gaat en heeft iemand een alternatieve code die hetzelfde trucje doet?
Code:
 Private Sub Reg1_AfterUpdate()
 
 If WorksheetFunction.CountIf(Blad2.Range("A:A"), Me.reg1.Value) = 0 Then
 MsgBox "Dit GVA-nummer staat niet in de lijst"
 Me.reg1.Value = ""
 Exit Sub
 End If

 With Me
    .reg2 = Application.WorksheetFunction.VLookup(CLng(Me.reg1), Blad2.Range("zoek"), 2, 0)
    .reg3 = CDate(Application.WorksheetFunction.VLookup(CLng(Me.reg1), Blad2.Range("zoek"), 3, 0))
    .reg4 = Application.WorksheetFunction.VLookup(CLng(Me.reg1), Blad2.Range("zoek"), 4, 0)
 End With
 End Sub

Bij voorbaat dank.
 
En de foutmelding? :rolleyes:
 
ja, wel handig te vermelden.

Hij geeft foutcode 13.

Typen komen niet met elkaar overeen.

Is die Clng eigenlijk wel nodig?
 
Laatst bewerkt:
Daar zijn dus weer meer afhankelijkheden en kan je beter je document plaatsen.
 
Haal hier de CDate functie weg:
CDate(Application.WorksheetFunction.VLookup(CLng(Me.reg1), Blad2.Range("zoek"), 3, 0))

Er staat nl. geen datum in kolom 3 van de lookup range.
Daarnaast, maar dat gaat wel goed, staat in kolom 1 niet een Longword of Integer maar een tekst waarde.
Die CLng is dus ook overbodig.
 
Laatst bewerkt:
Edmoor, je bent weer geweldig.

Ik had bij het maken van het bestand wel een datum handmatig ingetikt, maar nu wordt het inderdaad niet als datum gezien.

Bedankt weer!

Gr.

Sjon
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan