tabel wordt niet gevonden

Status
Niet open voor verdere reacties.

so10070

Gebruiker
Lid geworden
4 feb 2014
Berichten
424
Volgende code geeft een leeg formulier bij opstarten (tabel wordt blijkbaar niet gevonden), maar indien een eerste keuze gemaakt is, lukt dit zonder problemen.
Code:
Private Sub Form_Load()
    Dim sqlLijstFilter As String
    Dim FormulierFilter As String
    
    'macro maken om lijst samen te stellen
    'dan filter op formulier voor betrokken keuze
    sqlLijstFilter = "SELECT TabelTijdelijkPerSchoolVoorDirCo.Schoolnaam " & _
        "FROM TabelTijdelijkPerSchoolVoorDirCo " & _
        "GROUP BY TabelTijdelijkPerSchoolVoorDirCo.Schoolnaam " & _
        "ORDER BY TabelTijdelijkPerSchoolVoorDirCo.Schoolnaam;"
    FormulierFilter = "Schoolnaam = '" & Me.cmbKeuzeSchool & "'"
    'Debug.Print FormulierFilter
    
    Me.cmbKeuzeSchool.RowSource = sqlLijstFilter
    Me.cmbKeuzeSchool = Me.cmbKeuzeSchool.ItemData(0)
    Me.Filter = FormulierFilter
    'Debug.Print Me.Filter
    Me.FilterOn = True
    Debug.Print Schoolnaam 'is Null en weet niet waarom.  Er bestaan nog geen records
    Debug.Print datum_doorlichting 'en hier dan uiteraard een fout
'    DoCmd.GoToRecord , , acFirst 'en kan uiteraard ook niet naar eerste record gaan
End Sub
 
Behalve dat je teveel code gebruikt, zit er ook een onlogische volgorde in: eerst het filter opbouwen met een lege keuzelijst, en dán pas de SQL aan de keuzelijst toewijzen? Moet natuurlijk andersom!

Code:
    sqlLijstFilter = "SELECT DISTINCT Schoolnaam FROM TabelTijdelijkPerSchoolVoorDirCo ORDER BY Schoolnaam;"
    With Me.cmbKeuzeSchool
        .RowSource = sqlLijstFilter
        .Value = .ItemData(0)
    End With
    FormulierFilter = "Schoolnaam = '" & Me.cmbKeuzeSchool & "'"
    Me.Filter = FormulierFilter
    Me.FilterOn = True
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan