Atšaukti ataskaitos spausdinimą, jei jame nėra nė vieno įrašo

Pagal numatytuosius numatytuosius duomenis galite spausdinti ataskaitas, kuriose nėra įrašo. Norėdami išspręsti šią problemą, galite naudoti makrokomandą arba "Microsoft Visual Basic for Applications" (VBA) kodą, kad nustatytumėte, ar ataskaitos nėra įrašuose, tada atšauktumėte spausdinimo operaciją. Šiame straipsnyje aprašyti veiksmai paaiškina, kaip naudoti abi technikas.

Ką norėtumėte daryti?

Tikriausiai norėsite atšaukti ataskaitos spausdinimą, kai jame nėra nė vieno įrašo. Pavyzdžiui, jei pradedate parduoti naują produktą, gali būti, kad jūs dar neregistruojate pardavimo. Todėl turėtumėte apsvarstyti galimybę, kad kai kuriose ataskaitose gali nebūti išsamios informacijos įrašų ir kad agregavimo funkcijos, pvz., Count funkcija, gali būti neskaičiuojamos. Norėdami grakščiai apdoroti, galite sukurti makrokomandą, kuri atšaukia spausdinimo užduotį. Taip pat galite įtraukti kelias įdėtų VBA kodo eilutes, kad galėtumėte atlikti tą patį. VBA yra programavimo kalba, kurią naudoja Access.

Galite įtraukti makrokomandą arba VBA kodą į ataskaitos "No data " įvykio procedūrą. Access paleidžia į ne duomenų įvykį kaskart paleidus ataskaitą, kurioje nėra įrašo. Šiame straipsnyje aprašyta makrokomanda ir VBA kodas rodo reikiamą pranešimą ir panaikina ataskaitos spausdinimą, kai toje ataskaitoje nėra duomenų. Kai įtraukiate makrokomandą arba VBA kodą į duomenų įvykio procedūrą, MAKROKOMANDA arba VBA kodas paleidžiama atidarius ataskaitą, kurioje nėra jokių įrašo. Kai spustelėsite gerai , kad uždarytumėte bet kurį įspėjimo pranešimą, makrokomanda taip pat uždaro tuščią ataskaitą. Kai į ataskaitą įtraukiate makrokomandą arba VBA kodą, bandant Rodyti ataskaitos rodinį arba maketo rodinį tuščia ataskaita nebus atidaroma, bet ataskaitą galite atidaryti kaip dizaino rodinį.

Makrokomandos naudojimas norint atšaukti spausdinimą

Šiame skyriuje aprašyta makrokomanda rodo įspėjimo pranešimą, kai bandote išspausdinti tuščią ataskaitą. Kai spustelėsite gerai , kad uždarytumėte pranešimo lauką, makrokomanda automatiškai atšauks spausdinimo operaciją. Jei nebūsite įspėjamojo pranešimo, jis bus rodomas taip, tarsi nieko neatsitiktų, kai bandysite spausdinti ataskaitą, kuri tikriausiai painios ataskaitos vartotojus.

Makrokomandos kūrimas

  1. Naršymo srityje dešiniuoju pelės mygtuku spustelėkite norimą keisti ataskaitą ir spustelėkite dizaino rodinys.

  2. Skirtuko Dizainas grupėje Rodymas/slėpimas spustelėkite Ypatybių lapas.

    –arba–

    Dukart spustelėkite ataskaitos viršutiniame kairiajame arba dešiniajame kampe esantį lauką, atsižvelgdami į regiono ir kalbos parametrus.

  3. Spustelėkite skirtuką įvykis , tada ypatybės lauke be duomenų spustelėkite Daryklės mygtukas .

    Rodomas dialogo langas Daryklės pasirinkimas .

  4. Spustelėkite makrokomandų daryklė, tada spustelėkite gerai.

    Makrokomandų dizaino įrankis pradedamas ir rodoma tuščia makrokomanda.

  5. Makrokomandos veiksmų išplečiamajame sąraše, esančiame lange makrokomandų dizainas, sąraše pasirinkite MessageBox .

  6. pranešimo lauke įveskite įspėjimo pranešimo tekstą.

    Pavyzdžiui, galite įrašyti šiuos veiksmus: ataskaitų nėra .

  7. Pasirinktinai pakeiskite argumento reikšmę lauke Pypsėjimastaip į ne , o sąraše tipas pasirinkite piktogramos, kurią norite matyti įspėjimo pranešime, tipą.

  8. Lauke pavadinimas įveskite įspėjimo pranešimo pavadinimą.

    Pavyzdžiui, galite neįrašyti jokių įrašo.

  9. Pasirinkite makrokomandos veiksmų išplečiamąjį sąrašą po veiksmu MessageBox , tada pasirinkite CancelEvent.

  10. Skirtuko dizainas grupėje uždarymas spustelėkite įrašyti.

  11. Skirtuko Dizainas grupėje Uždarymas spustelėkite Uždaryti. Jei rodomas įspėjamasis pranešimas ir klausiama, ar norite įrašyti makrokomandos ir ataskaitos ypatybę, spustelėkite taip, uždaryti ataskaitą, įrašyti savo atliktus veiksmus, jei būsite paraginti, ir toliau atlikti kitus veiksmus, kad jį išbandytumėte.

Makrokomandos tikrinimas

  • Naršymo srityje dešiniuoju pelės mygtuku spustelėkite ataskaitą, kurioje yra makrokomanda, tada spustelėkite Spausdinti. Atsižvelgiant į pasirinktas parinktis, "Access" rodo įspėjimo pranešimą.

    Kai spustelėsite gerai , kad uždarytumėte pranešimą, veiksmas CancelEvent sustabdo spausdinimo operaciją. Kadangi nenurodyta jokio kito įvykio (pvz., atidaryti ataskaitą peržiūrai), ataskaita uždaroma.

Puslapio viršus

Naudokite VBA kodą, kad atšauktumėte spausdinimą

Čia aprašytas VBA kodas veikia panašiai kaip ankstesnėje sekcijoje aprašyta makrokomanda – kai atidarote tuščią ataskaitą, rodoma įspėjamasis pranešimas, o jūs uždarote įspėjimo pranešimą.

Įtraukti VBA kodą

  1. Naršymo srityje dešiniuoju pelės mygtuku spustelėkite norimą keisti ataskaitą ir spustelėkite dizaino rodinys.

    Pastaba: Norėdami atlikti šią procedūrą, naudokite ataskaitą, kurioje nėra įrašo.

  2. Skirtuko Dizainas grupėje Rodymas/slėpimas spustelėkite Ypatybių lapas.

    –arba–

    Dukart spustelėkite ataskaitos viršutiniame kairiajame arba dešiniajame kampe esantį lauką, atsižvelgdami į regiono ir kalbos parametrus.

  3. Spustelėkite skirtuką įvykis , tada ypatybės lauke be duomenų spustelėkite Daryklės mygtukas .

    Rodomas dialogo langas Daryklės pasirinkimas .

  4. Spustelėkite kodo daryklė, tada spustelėkite gerai.

    Pradedama "Visual Basic" rengyklė ir rodoma tuščia įvykio procedūra.

  5. "Visual Basic" rengyklėje įveskite šį kodą, kad Report_NoData procedūra atrodytų taip pat, kaip tai padarysite:

    Private Sub Report_NoData (Cancel As Integer)
    MsgBox "There are no records to report", vbExclamation, "No Records"
    Cancel = True
    End Sub
  6. Baigę spustelėkite failas, tada spustelėkite įrašyti.

  7. Spustelėkite failas, tada spustelėkite uždaryti ir grįžti į "Microsoft Access".

  8. Uždarykite atidarytą ataskaitą, tada spustelėkite taip , kad patvirtintumėte įrašymą.

  9. Naršymo srityje dešiniuoju pelės mygtuku spustelėkite ką tik pakeistą ataskaitą ir spustelėkite Spausdinti. Atsižvelgiant į pasirinktas parinktis, "Access" rodo įspėjimo pranešimą.

Report_NoData procedūra naudoja funkciją MsgBox , kad būtų rodoma, jog nėra įrašo, kad būtų rodomas pranešimas ir mygtukas gerai . Spustelėjus gerai, procedūros eilutėje "atšaukti = TRUE" nurodo programai "Access" atšaukti ataskaitą. Atšaukti yra argumentas, kuris automatiškai perduodamas įvykio procedūrai ir visada yra pažymėtas "Access", kai baigia įvykio procedūrą.

Puslapio viršus

Reikia daugiau pagalbos?

Tobulinkite savo „Office“ įgūdžius
Ieškoti mokymo
Pirmiausia gaukite naujų funkcijų
Prisijunkite prie „Office Insider“ dalyvių

Ar ši informacija buvo naudinga?

Dėkojame už jūsų atsiliepimus!

Dėkojame už jūsų atsiliepimą! Panašu, kad gali būti naudinga jus sujungti su vienu iš mūsų „Office“ palaikymo agentų.

×