Records zoeken in formulier

Status
Niet open voor verdere reacties.

Webster23

Gebruiker
Lid geworden
17 apr 2018
Berichten
21
Heb hier een vraagje over hoe je records kan zoeken in een formulier.

In bijlage heb ik mijn database geüpload voor meer duidelijkheid.

Het Frm_DossiersInvul gebruiken we om de Tbl_Dossiers in te vullen.
Maar dit gebeurt niet altijd in één keer per record.
We krijgen namelijk op een bepaalde dag een mail van een wijziging, dan maken we een dossier aan en vullen we de gegevens (specialiteit, planid, versie, wijzigingsdatum,...) die we kennen in.
Een paar dagen later krijgen we de plannen en moeten we terug in het Frm_DossiersInvul de record gaan zoeken om verder aan te vullen.

Nu was mijn vraag hoe kan ik makkelijk het juiste dossier terug vinden? Nu is het nog een kleine lijst, maar deze gaat blijven groeien en dan gaat het moeilijker worden om te zoeken.

Kan dit via een ander formulier en met keuzelijsten voor bv specialiteit, planid en versie om tot de juiste record te komen? Of moet ik ergens filters toepassen?

Ik kom er maar niet uit...

Alvast bedankt!
 

Bijlagen

  • Manuals & Protocols V0.6.7.accdb.zip
    139 KB · Weergaven: 25
Heel simpel, keuzelijsten maken op het formulier dat je nu ook gebruikt. Met een paar keuzelijsten op basis van de zoekingangen (je geeft al aan: specialiteit, planID, versie etc) in de koptekst van het formulier kun je naar elk item springen dat je wilt. Daarbij baseer je die keuzelijsten dan op de tabel [Tbl_Dossiers], die je nu ook gebruikt voor je formulier, en zet je dus op elk veld dat je in de keuzelijst laat zien een criterium. Je voorbeeld laat zich niet makkelijk voorzien van een voorbeeldje (Specialiteit is niet gekoppeld aan een veld, PlanID is leeg en versienumnmers zijn nu zo te zien uniek) maar op basis van versienummer heb ik dit gemaakt:

1. een keuzelijst met de naam cboVersie met deze rijbron:
Code:
SELECT DISTINCT VersieNr FROM Tbl_Dossiers ORDER BY VersieNr;
2. Een gebeurtenis met deze code:
Code:
Private Sub cboVersie_Click()
    If Not Me.cboVersie = vbNullString Then
        Me.Filter = "[VersieNr] = " & Me.cboVersie
        Me.FilterOn = True
    Else
        Me.Filter = ""
        Me.FilterOn = False
    End If
End Sub
En daarmee filter je dus het hoofdformulier. Voor het mooie kun je nog een knop maken die het filter leeg maakt.
 
Versienummers zijn niet uniek, nu nog mss wel maar gaat komen dat het niet meer is...

Het is niet mogelijk dat je op twee dingen filtert?

Had graag gehad dat ik uiteindelijk maar op 1 uniek record terecht kwam, door eerst een specialiteit te kiezen, vervolgens planID en dan versienummer.
Of is dit te ingewikkeld?

Je zei iets dat specialiteit niet gekoppeld is? Dit had ik gedaan omdat specialiteit al in Tbl_Plannen staat en anders had ik in 2 tabellen dezelfde gegevens.
Het rare is wel dat hij deze na het opslagen niet meer weergeeft.
 
Het is niet mogelijk dat je op twee dingen filtert? .
Heb ik dat ergens gezegd? :). Natuurlijk kan dat; je kunt makkelijk filters combineren. Daarbij kun je dan kiezen voor OF en voor EN filters, en alle mogelijke combinaties daarvan.
Zelf zou ik, als je zo uitgebreid wilt kunnen filteren, dat anders aanpakken en een doorlopend formulier maken waarin je het filter ‘opbouwt’. Ik heb daar een uitgebreid formulier voor gemaakt, dat regelmatig gevraagd wordt. Als je dat niet kan vinden in het forum, kan ik hem nog wel een keer posten. Het is wel een behoorlijk ingewikkeld verhaal alles bij elkaar, omdat zo’n uitgebreid zoekformulier heel flexibel moet zijn; de ene keer bestaat het filter uit tekst, dan weer uit datums, de volgende keer getallen én tekst... Kortom: zo’n filter maak je niet zo maar even. Maar als het goed werkt, is het ook voldoende om de code te importeren en het formulier in te richten.
 
Hey OctaFish,

Zou je me effe kunnen helpen met de link naar dit uitgebreid formulier?
Ben blijkbaar echt slecht in het zoeken, want kan het niet vinden...

Alvast bedankt!
 
Ik ook niet :). Maar ik heb gelukkig nog wel wat voorbeelden liggen; hier een zoekformulier dat behoorlijk uitgebreid is, dus de code is niet heel simpel, maar hopelijk wel te volgen.
 

Bijlagen

  • Filteren Uitgebreid V3.zip
    55,2 KB · Weergaven: 48
Beste OctaFish,

Het is iets te moeilijk voor mij, daaraan zie ik dat mijn kennis van Access nog vrij beperkt is :(

Toch bedankt voor de moeite, ik heb nu via andere weg gevonden hoe ik dingen moet terugvinden in men database.
Is enkel wel maar makkelijk om de laatste records terug te vinden, maar voorlopig helpt dit al wel.

Met vriendelijke groeten
Vind het echt super dat je hier zoveel tijd in wil steken!
 
Sorry voor de late reactie...

Ik heb gewoon een formulier gemaakt van alle records en dan via een Macro (yes I know...) als je op het dossiernummer klikt komt het juiste dossier te voorschijn.
Formulier zo gemaakt dat de laatste records direct zichtbaar zijn en voor mij lukt dit voorlopig.

Toch nog bedankt om voor een oplossing te zoeken!

Groeten
Wesley
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan