16. maj 2009 - 11:33Der er
6 kommentarer og 1 løsning
Søgefunktion starter når man åbner formular
Jeg har en formular som mine brugere skal vælge en af fire knapper fra og hvis man f.eks. klikker på den ene - åbnes formularen "sagsoprettelse".
Da mine brugere ikke er specielt velbevandret i access vil jeg gerne gøre så meget som muligt for at de ikke opdaterer forkerte data.
F.eks. kunne jeg godt tænke mig at når de klikker på "sagsoprettelse" - så åbnes formularen "sagsoprettelse" (som nedenfor) - men samtidig vil jeg gerne have at søgefunktionen starter op - så de ikke kommer til at skrive i det første felt før de selv vælger "søg".
Det første felt i "sagsoprettelse" er "CPRnr" - så kort fortalt vil jeg gerne have at det første de skal når de klikker på knappen er at søge efter et cpr nr.
Private Sub OpretSag_Click() On Error GoTo Err_OpretSag_Click
Dim stDocName As String Dim stLinkCriteria As String
hej mugs! jeg er desværre ikke en haj til VBA som du - så kan du sige mig om ovenstående skal ind i den "OpretSag_Click()" jeg allerede har - og hvis ja - hvor det skal ind?
jeg har allerede feltet CPRnr i formularen som "Etiket137"
Det fungerer fint, tak! Men jeg kan se at det måske ikke løser hele mit problem alligevel...
vi er en virksomhed der hjælper kommuner med at få deres borgere i arbejde m.m.
vi har derfor en sagsstyrings database hvor vi opretter en sag hver gang vi har en borger inde - og da vi kan lave flere ting med borgeren - har vi også flere sager pr. borger - men vi har altid kun en aktiv sag.
jeg har lavet en tabel hvor vi opretter borgerne og en tabel hvor vi opretter sagerne - og af sagens natur kan borgerne kun optræde en gang i borgertabellen men flere gange i sagstabellen.
når vi nu har lavet denne smarte søgefunktion samtidig med at formularen åbnes - så er det ikke sikkert at det er den rigtige sag der kommer frem - da det ikke nødvendigvis er den der er aktiv.
da jeg har et felt i tabellen "sager" der indikerer om sagen er aktiv eller ej - så ville det være genialt hvis den samtidig med at søge efter cpr nr. også checkede om der var en aktiv sag.
hvorfor jeg skriver det på denne måde er, at man også nogle gange skal søge efter borgere der ikke har en aktiv sag - og så skal den bare finde den første record.
Private Sub Kommandoknap20_Click() Dim VARa As String VARa = InputBox(Prompt:="Indtast CPRNR.", Title:="Find CPRNR.", Default:="") DoCmd.GoToControl "CPRNR" DoCmd.FindRecord VARa, acEntire, False, , True, acCurrent, True Me.Filter = "aktiv = True" Me.FilterOn = True End Sub
hvor aktiv er et felt (Ja/Nej) der er sat til True hvis posten er aktiveret. Det betyder, at du kun vil se poster der matcher dit søgekriterie (CPRNR) og finder den post der er aktiv.
Ovennævnte kode finder det indtastede CPRnr og derefter filtrerer den alle poster, men i dette eksempel, skal der 2 kriterier til. Først findes CPRnr og derefter filtreres de fundne poster til aktiv = true. Så filteret skal modificeres lidt:
Me.Filter = "CPRNR = '" & Me!CPRnr & "' And aktiv = True"
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.