Meerdere standaardwaarden

Status
Niet open voor verdere reacties.
Heb de code getest maar krijg de volgende foutmelding: Knipsel5.PNG Waar ligt dit aan?
 
Ik heb even een voorbeeldje gemaakt. Kijk maar eens of die het doet bij jou.
 

Bijlagen

  • Database1.zip
    203,5 KB · Weergaven: 24
Het is tot zover gelukt! Hartelijk bedankt voor je tijd en je uitleg! :thumb::thumb:

Heb ik nog wel 2 vraagjes;
1. Als ik het veld (in jouw voorbeeld "listbox_trui_reg") instel om alleen een bepaalde selectie te laten zien (bv alleen de kleur) dan werkt deze constructie niet meer. Jij weet dan ook vast wel waar dat aan ligt?
2. Omdat de eigenschap is veranderd van keuzelijst met invoervak naar alleen keuzelijst vind ik het best onhandig om snel de juiste mogelijkheden te selecteren. Is die keuzelijst nog aan te passen naar ieder wat wils of is die zoals die is?
 
Vraag 1: wat bedoel je daar precies mee? Hoe filter je die keuzelijst dan?

Vraag 2: een keuzelijst is technisch iets anders als een keuzelijst met invoervak. Die laatste kan maar één waarde als resultaat leveren, de .Value property, en bij een keuzelijst kun je dat instellen: één waarde (.Value) of meerdere waarden (.SelectedItems). Bij meervoudige keuze moet je door de lijst loopen om de gekozen waarden uit te lezen. Afhankelijk van die instelling bepaal je hoe je een keuzelijst uitleest. Al kun je, ook bij een enkelvoudige keuzelijst, de waarde natuurlijk altijd met .SelectedItems uitlezen. Je hoeft dan geen loop te gebruiken omdat je precies weet welk Item Selected is.

Als je teveel waarden in een keuzelijst hebt staan, wordt die onhandig in het gebruik. (De vraag is dan of je nog steeds dat MultiValue veld moet gebruiken. Ik heb een spuughekel aan dat veld, dus mij zul je dat zelden zien gebruiken) Dan kun je de lijst bijvoorbeeld opdelen in meerdere keuzelijsten die elk een eigen deel pakken. Of je filtert de keuzelijst eerst. Maar dan zitten we weer in vraag 1 geloof ik :)
 
Stel, je hebt in het tabel tEigenschappen ook een kolom met "type". De kleuren vallen dan onder type "kleur" en de maten onder type "maat". In het formulier stel je in dat je alleen op kleur wilt filteren via rijbron en dan bij criteria van het veld "kleur". Zo filter ik de mogelijkheden uit de tabel aangezien de tabel vol staat met andere mogelijkheden.

Het gaat mij bij vraag 2 vooral om de manier hoe de lijst zich presenteert. Voorheen klikte ik de "scrollbalk" aan en kreeg de lijst overzichtelijk "out of the box" te zien waar ik ook makkelijk doorheen kon scrollen en aan kon vinken wat nodig was. Nu heb ik alleen overzicht in het venster zelf. Uiteraard kan je het vergroten maar de mogelijkheden zijn nog steeds dusdanig groot dat dat geen zin heeft.
 
Vraag 2 is mij nog steeds niet duidelijk. Een keuzelijst heeft, als je niet alle waarden kunt zien, altijd een verticale schuifbalk. Dus wat is dan het probleem? Maar wellicht is het probleem al opgelost als je het filteren onder de knie hebt. (vraag 1). Waarvan ik je oplossing nog niet helemaal snap, want volgens mij moet dat zo wel kunnen. Al zou ik zelf de lijst niet filteren maar dus echt de SQL van de lijst veranderen. Zodat de keuzelijst altijd een werkende query heeft en niet een gefilterde.
 
Zo, weer even wat tijd om te hobbyen.

Wat ik bedoel met het verschil van keuzelijst is het volgende: Knipsel6.PNG

Filteren doe ik volgens mij ook via de SQL. Ik heb de kolom type toegevoegd: Knipsel7.PNG
Vervolgens gefilterd via de opbouw van query's: Knipsel8.PNG

Ik heb wel gezien tijdens het voorbeeld geven dat de filtering inderdaad gewoon werkt in de test database. Ik zal dan waarschijnlijk iets fout hebben gedaan in mijn database. In dit geval ga ik nog even op zoek. Echter blijft vraag 2 dan nog open staan.
 
Laatst bewerkt:
Heb het allemaal nog eens na gelopen maar kom er niet uit.
Als ik geen filter toepas op de keuzelijst dan selecteert hij wel enkele opties echter zijn dit niet de opties die ik aan heb gevinkt in de tabel... Ergens pakt hij zomaar andere waarden? Dat kan natuurlijk niet want ik ben de opdrachtgever hahaha :D
Zodra ik de filter toepas selecteert hij helemaal niets...
 
Bij mij worden hier ook in de keuzelijst de vakjes niet juist aangevinkt bij het aanmaken van een nieuwe record.
 
Er zit inderdaad een klein foutje in de code in het voorbeeld; omdat ik een record heb verwijderd kloppen de records niet meer. Het gevolg is dat de kleuren nog wel goed werden ingeschakeld, maar de maten niet meer. Zo wel:
Code:
Dim rst As DAO.Recordset
Dim strSQL As String
Dim arr() As Integer, i As Integer, j As Integer
    If Me.NewRecord Then
        Dim sTmp As String
        strSQL = "SELECT EigenschapID, Eigenschap FROM tEigenschappen WHERE standaard = TRUE;"
        Set rst = CurrentDb.OpenRecordset(strSQL)
        With rst
            Do While Not .EOF
                If i = 0 Then ReDim arr(i)
                If i > LBound(arr) Then ReDim Preserve arr(i)
                arr(i) = rst!EigenschapID
                i = i + 1
                .MoveNext
            Loop
            .Close
        End With
        For i = 0 To Me.ListBox_trui_reg.ListCount
            For j = LBound(arr) To UBound(arr)
                If arr(j) = Me.ListBox_trui_reg.ItemData(i) Then
                    Me.ListBox_trui_reg.Selected(i) = True
                    Exit For
                End If
            Next j
        Next i
    End If
 
Het lijkt nu te werken bij toevoegen van een nieuwe record maar van waar komt die boodschap bij de datumkeuzes als je een andere dag dan een vrijdag kiest?
 

Bijlagen

  • Knipsel.JPG
    Knipsel.JPG
    14,3 KB · Weergaven: 38
Uit een ander draadje. Kijk maar eens of je de oorsprong kan vinden :).
 
octafish zei:
omdat ik een record heb verwijderd kloppen de records niet meer

Als ik records heb verwijderd in mijn database, is dat dus ook de rede waarom er bij mij niet de juiste waarden worden geselecteerd? Ik heb de code namelijk getest en 2 van 3 opties vinkt hij aan bij een nieuw record.
Zo ja, hoe pas ik dat aan een waar in de code moet ik dan op letten?


frans83 zei:
Het gaat mij bij vraag 2 vooral om de manier hoe de lijst zich presenteert. Voorheen klikte ik de "scrollbalk" aan en kreeg de lijst overzichtelijk "out of the box" te zien waar ik ook makkelijk doorheen kon scrollen en aan kon vinken wat nodig was. Nu heb ik alleen overzicht in het venster zelf. Uiteraard kan je het vergroten maar de mogelijkheden zijn nog steeds dusdanig groot dat dat geen zin heeft.
frans83 zei:
Wat ik bedoel met het verschil van keuzelijst is het volgende: Bijlage 310943

Kan ik de eigenschappen van het venster van een "keuzelijst met invoervak" ook creëren bij een "keuzelijst"?
 
Zo ja, hoe pas ik dat aan een waar in de code moet ik dan op letten?
De nieuwe code die wel goed werkt, zit in bericht #30.

Kan ik de eigenschappen van het venster van een "keuzelijst met invoervak" ook creëren bij een "keuzelijst"?
Die snap ik niet helemaal. Een keuzelijst heeft andere eigenschappen als een keuzelijst met invoervak, en daar kun je dus ook niets bijmaken of afhalen. Het object is nu eenmaal wat het is.
 
Wat jammer nou, ik vond de manier van selecteren bij de "keuzelijst met invoervak" een stuk makkelijker.

De code werkt niet in mijn database, wel in jouw test database. Ik ga dan nog eens op onderzoek waarom dat zo is. Bedankt weer voor je tijd.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan