Annullere udskrivning af en rapport, hvis den ikke indeholder poster

Vigtigt: Denne artikel er maskinoversat. Se ansvarsfraskrivelsen. Du kan finde den engelske version af denne artikel her til din orientering.

Du kan som standard udskrive rapporter, der ikke indeholder poster. Hvis du vil løse dette problem, kan du bruge enten en makro eller VBA-kode (Microsoft Visual Basic for Applications) til at opdage fraværet af poster i en rapport og derefter annullere udskrivningen. Fremgangsmåderne i denne artikel forklarer brugen af begge teknikker.

Hvad vil du foretage dig?

Bruge en makro til at annullere udskrivning

Brug VBA-kode til at annullere udskrivning

Du vil formentlig annullere udskrivningen af en rapport, hvis den ikke indeholder poster. Hvis du f.eks. begynder at sælge et nyt produkt, kan der nemt være en periode, hvor der ikke bliver registreret noget salg. Derfor bør du overveje muligheden for, at nogle af dine rapporter måske ikke indeholder nogen detaljeposter, og at aggregatfunktioner, som f.eks. funktionen Count, måske ikke har noget at optælle. For at håndtere dette på en god måde kan du oprette en makro, der annullerer udskrivningsjobbet. Alternativt kan du tilføje nogle få linjer nøje anbragt VBA-kode til at udføre den samme funktion. VBA er det programmeringssprog, som Microsoft Office Access 2007 anvender.

Du kan føje makroen eller VBA-kode til rapportens På ingen Data hændelsesprocedure. Office Access 2007 udløser hændelsen På ingen Data , når du kører en rapport, der ikke indeholder nogen adresser. Makroen og VBA-kode, der er beskrevet i denne artikel viser en relevant meddelelse og annullere udskrivningen af rapporten, når rapporten ikke indeholder data. Når du tilføjer en makro eller VBA-kode til hændelsesprocedure På ingen Data , kører makroen eller VBA-kode, hver gang du åbner en rapport, der ikke indeholder nogen poster. Når du klikker på OK for at lukke en advarselsmeddelelse, lukkes makroen også tom rapport. Når du føjer makroen eller VBA-kode til rapporten, åbnes en tom rapport ikke, når du forsøger at få den vist i rapportvisning eller layoutvisning – men du kan åbne rapporten i designvisning.

Bruge en makro til at annullere udskrivning

Makroen, der beskrives i dette afsnit, viser en advarselsmeddelelse, når du forsøger at udskrive en tom rapport. Når du klikker på OK for at lukke meddelelsesboksen, annullerer makroen automatisk udskrivningen. Hvis du ikke medtager en advarselsmeddelelse, vil det se ud, som om der bare ikke sker noget, når du forsøger at udskrive rapporten - noget, der nok vil forvirre brugerne af rapporten.

Oprette makroen

  1. Højreklik på den rapport, du vil ændre, i navigationsruden, og klik derefter på Designvisning.

  2. Klik på Egenskabsark i gruppen Vis/skjul under fanen Design.

    Eller

    Dobbeltklik på boksen i øverste venstre eller højre hjørne af rapporten, afhængigt af dine Internationale og sproglige indstillinger.

  3. Klik på fanen hændelser, og klik på Knappen Generator i egenskabsfeltet På ingen Data.

    Dialogboksen Vælg generator åbnes.

  4. Klik på Makrogenerator, og klik derefter på OK.

    Makrodesigneren starter og åbner en tom makro.

  5. I den første række i makroen skal du klikke på feltet i kolonnen Handling og derefter vælge Meddelelsesboks på listen.

  6. Under Handlingsargumenter i den nederste sektion af makrodesigneren skal du i boksen Meddelelse skrive teksten til advarselsmeddelelsen.

    Du kan f.eks. skrive følgende: Der er ingen poster at rapportere.

  7. Du kan også ændre argumentværdien i boksen Bip fra Ja til Nej og derefter på listen Type vælge den type ikon, du ønsker, der skal vises i advarselsmeddelelsen.

  8. Skriv titlen til advarselsmeddelelsen i boksen Titel.

    Du kan f.eks. skrive Ingen poster.

    Dine ændringer vises i den øverste del af makrodesigneren - i kolonnen Argument ud for handlingen Meddelelsesboks.

  9. I den øverste del af makrodesigneren skal du klikke på den næste celle i kolonnen Handling (cellen lige under Meddelelsesboks) og derefter vælge AnnullerHændelse

    Makroen skal se ud som følgende, selvom du kan bruge en anden tekst i argumenterne:

    Eksempel på makro, der annullerer et udskriftsjob

  10. Klik på Gem som under fanen Design i gruppen Luk, og derefter bruge dialogboksen Gem som for at give makroen et navn.

  11. Luk makroen. Hvis der vises en advarselsmeddelelse, hvori du bliver spurgt, om du vil gemme ændringerne til makroen og rapportegenskaben, skal du klikke på Ja og gå videre til de næste trin for at afprøve den.

Afprøve makroen

  • Højreklik i navigationsruden på den rapport, der indeholder makroen, og klik derefter på Udskriv. Afhængigt af de valgte indstillinger vises der en advarselsmeddelelse i stil med følgende:

    Meddelelsesboks, der vises, når rapporten ikke indeholder poster

    Når du klikker på OK for at lukke meddelelsen, stopper handlingen AnnullerHændelse udskrivningen. Fordi du ikke har angivet nogen anden hændelse (f.eks. åbne rapporten for visning), lukkes rapporten.

Toppen af siden

Bruge VBA-kode til at annullere udskrivning

VBA-koden, der beskrives her, fungerer stort set på samme måde som makroen, der er beskrevet i forrige afsnit - den viser en advarselsmeddelelse, når du åbner en tom rapport, og annullerer derefter udskrivningen, når du lukker advarselsmeddelelsen.

Tilføje VBA-kode

  1. Højreklik på den rapport, du vil ændre, i navigationsruden, og klik derefter på Designvisning.

    Bemærk: For at fuldføre denne procedure, skal du bruge en rapport, der ikke indeholder nogen poster.

  2. Klik på Egenskabsark i gruppen Vis/skjul under fanen Design.

    Eller

    Dobbeltklik på boksen i øverste venstre eller højre hjørne af rapporten, afhængigt af dine Internationale og sproglige indstillinger.

  3. Klik på fanen hændelser, og klik på Knappen Generator i egenskabsfeltet På ingen Data.

    Dialogboksen Vælg generator åbnes.

  4. Klik på Kodegenerator, og klik derefter på OK.

    Visual Basic Editor starter og viser en tom hændelsesprocedure.

  5. Skriv følgende kode i Visual Basic Editor, så Rapport_IngenData-proceduren ser ud nøjagtigt som følgende, når du er færdig:

    Private Sub Report_NoData (Cancel As Integer)
    MsgBox "There are no records to report", vbExclamation, "No Records"
    Cancel = True
    End Sub
  6. Når du er færdig, klik på filer, og klik derefter på Gem.

  7. Klik på filer, og klik derefter på Luk og vend tilbage til Microsoft Office Access.

  8. Luk den åbne rapport, og klik derefter på Ja for at bekræfte Gem.

  9. Højreklik i navigationsruden på den rapport, du lige har ændret, og klik derefter på Udskriv. Der vises en meddelelse som følgende:

Meddelelsesboks, der vises, når rapporten ikke indeholder poster

Rapport_IngenData-proceduren anvender funktionen Meddelelsesboks til at vise meddelelsen Der er ingen poster at rapportere og knappen OK. Når du klikker på OK, instruerer linjen "Cancel=True" i proceduren Access om at annullere rapporten. Annuller er et argument, der automatisk overføres til hændelsesproceduren og altid kontrolleres af Access, når hændelsesproceduren er udført.

Toppen af siden

Bemærk: Ansvarsfraskrivelse for maskinoversættelse: Denne artikel er blevet oversat af et computersystem uden menneskelig indgriben. Microsoft tilbyder disse maskinoversættelse for at hjælpe ikke-engelsktalende brugere til at kunne nyde indhold om Microsofts produkter, tjenester og teknologier. Da artiklen er maskinoversat, kan den indeholde forkerte ord eller syntaks- eller grammatikfejl.

Var disse oplysninger nyttige?

Fantastisk! Har du mere feedback?

Hvordan kan vi forbedre det?

Tak for din feedback!

×