martijnverdaas
Gebruiker
- Lid geworden
- 5 apr 2010
- Berichten
- 44
Na wat lezen in de nieuwsbrieven zal ik een bestand van postcodes van NL met bijbehorende gegevens.
Dit had ik even op de plank opzij geschoven omdat ik alleen maar betaalde varianten tegen kwam.
Nu heb ik in mijn bestaande frm [frmLeerling] de velden nummer & postcode de codes gegeven zoals in het voorbeeld bestand.
code voor nummer;
en bij postcode;
wanneer ik een verkeerde postcode invoer krijg ik netjes de melding foute postcode. dus ergens gaat het de goede kant op.
Maar wanneer ik met de tab ga van postcode naar nummer en vul dan huisnummer in kies TAB of ENTER gebeurd er niks. geen foutmelding, geen fout in de VBA maar helaas ook geen adres gegevens in de gecodeerde velden
Mijn vraag is waar kan het aan liggen. Nu komt het overgrote deel van de info uit de [tblLeerling] en haalt hij voor deze actie de gegevens uit de drie tabellen zoals in het voorbeeld bestand zaten. Is dit de fout??
Ergens staat het mij bij dat je maar 1 tabel kan gebruiken, maar hoe los ik dit dan op. Moet ik mijn adres gegevens in een subform in dit formulier proppen of kan het makkelijker?
Dit had ik even op de plank opzij geschoven omdat ik alleen maar betaalde varianten tegen kwam.
Nu heb ik in mijn bestaande frm [frmLeerling] de velden nummer & postcode de codes gegeven zoals in het voorbeeld bestand.
code voor nummer;
Code:
Private Sub Nummer_AfterUpdate()
Dim Adres As Recordset
Dim sqlZ As String
Dim srt1 As Byte
Dim srt2 As Byte
If Me![Nummer] <> "" Then
If Me![Nummer] Mod 2 = 0 Then
srt1 = 1
srt2 = 1
Else
srt1 = 0
srt2 = 0
End If
Else
Me![Nummer] = 0
srt1 = 2
srt2 = 3
End If
sqlZ = "SELECT Straat, Plaats, Gemeente, Provincie FROM (Plaats INNER JOIN Straat ON Plaats.PlaatsID = Straat.PlaatsID) " & _
"INNER JOIN Postcodes ON Straat.StraatID = Postcodes.StraatID " & _
"WHERE (Postcode = '" & Me![Postcode] & "' AND " & _
"Van <=" & Me![Nummer] & " and " & _
"Tem >=" & Me![Nummer] & " and " & _
"(Soort = " & srt1 & " OR Soort = " & srt2 & "))"
If Me![Nummer] = 0 Then
Me![Nummer] = ""
End If
Set Adres = CurrentDb.OpenRecordset(sqlZ)
If Adres.BOF Then
MsgBox "Postcode/nummer niet gevonden", vbExclamation
Else
Me.Straat = Adres!Straat
Me.Plaats = Adres!Plaats
Me.Adres = Me.Straat & " " & Me.Nummer & vbLf & Me.Postcode & " " & Adres!Plaats
End If
Adres.Close
End Sub
en bij postcode;
Code:
Private Sub Postcode_AfterUpdate()
If DCount("*", "Postcodes", "Postcode = '" & Me.Postcode & "'") = 0 Then
MsgBox "Postcode bestaat niet", vbExclamation
End If
End Sub
wanneer ik een verkeerde postcode invoer krijg ik netjes de melding foute postcode. dus ergens gaat het de goede kant op.
Maar wanneer ik met de tab ga van postcode naar nummer en vul dan huisnummer in kies TAB of ENTER gebeurd er niks. geen foutmelding, geen fout in de VBA maar helaas ook geen adres gegevens in de gecodeerde velden
Mijn vraag is waar kan het aan liggen. Nu komt het overgrote deel van de info uit de [tblLeerling] en haalt hij voor deze actie de gegevens uit de drie tabellen zoals in het voorbeeld bestand zaten. Is dit de fout??
Ergens staat het mij bij dat je maar 1 tabel kan gebruiken, maar hoe los ik dit dan op. Moet ik mijn adres gegevens in een subform in dit formulier proppen of kan het makkelijker?