I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
På formularens \"VedÅbning\" (OnOpen) hændelse lægger du følgende kode:
If Me.RecordsetClone.RecordCount = 0 Then msgbox \"Formularen indeholder ingen data og lukkes derfor igen!\", vbinformation, \"Ingen data!\" DoCmd.CancelEvent End If
Det virker ikke helt. Men jeg har nok også udtrykt mig forkert. (jeg er ikke en særlig dreven bruger) Jeg har en formular XX hvori jeg har lavet en knap der aktiverer en lille formular hvori jeg kan indtaste nogle kriterier. Når jeg accepterer de kriterierer jeg har indtastet åbner den den formular jeg allerede har åben - d.v.s. formular XX. Og så er det, at hvis jeg har indtastet nogle kriterier der ikke matcher med nogen poster, så får jeg en hel blank side.
Jeg antager at det du kalder \"en lille formular\" er en underformular der ligger i formular XX. formular Xx og underformularen har forskellige datakilder.
Du lægger dine kriterier i den forespørgsel der giver data til underformularen, hvorimod Thomas\' kode tæller antal poster i den formular der giver data til formular XX.
Det er ikke nødvendigt med en underformular for at indtaste kriterier i en forespørgsel.
I det felt i forespørgslen hvori du vil indsætte kriterier indtaster du [], når formularen åbnes og forespørgslen køres vil du få et vindue, der beder dig om at indtaste kriterier. Inde i de firekantede paranteser kan du evt. indtaste en tekst så forespørgslens kriterier ser således ud:
[Indtast CPRNR:]
hvis det er et personnummer du vil indsætte som et kriterie.
På den måde undgår du at lave kommandoknaper i underformularer, og så vil jeg antage at Thomas\' kode virker korrekt.
Ganske kort om databasen: Den indeholder oplysninger om rekvisitioner for forskellige afdelinger.
Jeg har 2 formularer: Rekvisition og Kriterier.
Når jeg står i formularen Rekvisition ønsker jeg at kunne anvende filterfunktionen uden at bruge de normale knapper. Jeg har derfor lavet formularen Kriterier (popup), hvor jeg kan indtaste forskellige søgekriterier - bl.a. afdelingens navn.
Når jeg har indtastet de ønskede kriterier trykker jeg på en knap, der så åbner formularen Rekvisition (altså den jeg kom fra). Normalt går det godt. Jeg får nu kun vist de rekvisitioner der opfylder de indtastede kriterier og knappen Filtrer er markeret. Men hvis en afdeling f.eks. ingen rekvisitioner har får jeg et helt blankt skærmbillede - og det er det jeg gerne vil undgå.
I hvilken formular har du indlagt Thomas\' kode? Jeg vil tro den skal indlægges i din popup-formular, idet denne jo styrer kriterierne og dermed afgør om du får data i formularen Rekvisitioner.
Men det skulle jo ikke undre om Thomas kommer med en kommentar i løbet af dagen!
Tville-> prøv at indsætte nedenstående kode på Rekvisitions-formularen: Private Sub Form_ApplyFilter(Cancel As Integer, ApplyType As Integer) If DCount(\"*\", Me.RecordSource, Me.Filter) = 0 Then msgbox \"Der er ingen data, som opfylder de angivne kriterier! Alle poster vises istedet\", vbInformation, \"Ingen data!\" Me.FilterOn = False DoCmd.CancelEvent End If End Sub
Bortset fra det, så er det mere \'pænt\' at skrive: Forms!Rekvisition.Filter = Kriterie Forms!Rekvisition.FilterOn = True
i stedet for Docmd.Openform \"Rekvisition\",,,Kriterie
Det var mig der rodede lidt rundt i det, men jeg lærer det vel en dag. Men dit sidste hint Thomas, med at anvende filter og filterOn var det der fik det til at fungere - tror jeg. I hvert fald virker det nu. Tak for hjælpen
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.