Rekordokat nem tartalmazó jelentés nyomtatásának megszakítása

Alapértelmezés szerint nyomtathat rekordokat nem tartalmazó jelentéseket. A probléma megoldásához makrót vagy Microsoft Visual Basic for Applications (VBA) kódot használva észlelheti a rekordok hiányát egy jelentésben, majd megszakíthatja a nyomtatási műveletet. A cikkben található lépések mindkét módszer használatát ismertetik.

Kapcsolódó műveletek

Valószínűleg meg szeretné szakítani egy jelentés nyomtatását, ha az nem tartalmaz rekordokat. Ha például új terméket kezd el értékesíteni, valószínűleg van egy olyan időszak, amikor még regisztrálnia kell az értékesítéseket. Ezért célszerű megfontolni annak lehetőségét, hogy egyes jelentések nem tartalmaznak részletrekordokat, és hogy az összesítő függvények, például a Darab függvény, nem számítanak. Ha elegánsan szeretné kezelni az ilyen előfordulásokat, létrehozhat egy makrót, amely megszakítja a nyomtatási feladatot. Ugyanennek a gombra néhány sor gondosan elhelyezett VBA-kódot is hozzáadhat. A VBA az a programozási nyelv, Access használ.

A makrót vagy a VBA-kódot hozzáadhatja a jelentés "Nincs data" eseményműveleti eljáráshoz. Access rekordokat nem tartalmazó jelentés futtatásakor a "Nincs adatra" esemény aktiválódik. A cikkben ismertetett makró és VBA-kód megfelelő üzenetet jelenít meg, és akkor szakítja meg a jelentés nyomtatását, ha a jelentés nem tartalmaz adatokat. Amikor makrót vagy VBA-kódot ad a "Nincs adatra" esemény eljáráshoz, a makró vagy a VBA-kód minden alkalommal lefut, amikor rekordokat nem tartalmazó jelentést nyit meg. Ha az OK gombra kattintva bezárja valamelyik figyelmeztető üzenetet, a makró az üres jelentést is bezárja. Amikor hozzáadja a makrót vagy a VBA-kódot a jelentéshez, egy üres jelentés nem nyílik meg, amikor megpróbálja megjeleníteni Jelentés vagy Elrendezés nézetben – de megnyithatja a jelentést Tervező nézetben.

Nyomtatás megszakítása makróval

Az ebben a szakaszban ismertetett makró figyelmeztető üzenetet jelenít meg, amikor üres jelentést próbál nyomtatni. Amikor az OK gombra kattintva bezárja az üzenetmezőt, a makró automatikusan megszakítja a nyomtatási műveletet. Ha nem ad meg figyelmeztető üzenetet, az úgy fog megjelenni, mintha semmi sem történne a jelentés nyomtatva – ami valószínűleg összezavarja a jelentés felhasználóit.

A makró létrehozása

  1. A navigációs ablakban kattintson a jobb gombbal a módosítani kívánt jelentésre, és kattintson a Tervező nézet parancsra.

  2. A Tervezés lap Megjelenítés/elrejtés csoportjában kattintson a Tulajdonságlap gombra.

    – vagy –

    Kattintson duplán a jelentés bal felső vagy jobb felső sarkában lévő mezőre a területi és nyelvi beállításoktól függően.

  3. Kattintson az Esemény fülre, majd a Nincs adat tulajdonságmezőben kattintson a Szerkesztő gomb .

    Megjelenik a Szerkesztő kiválasztása párbeszédpanel.

  4. Kattintson a Makrószerkesztő gombra,majd az OK gombra.

    A makrótervező elindul, és egy üres makrót jelenít meg.

  5. A makrótervező ablak makróműveleteket felsoroló legördülő listájában válassza az Üzenetbox lehetőséget a listából.

  6. az Üzenet mezőbe írja be a figyelmeztető üzenet szövegét.

    Beírhatja például a következőt: Nincsenek jelentésbe jelentő rekordok.

  7. Ha szeretné, módosítsa a Hangjelzés mező argumentumértékét Igenről Nem értékre, és a Típus listában válassza ki a figyelmeztető üzenetben megjelenő ikon típusát.

  8. A Cím mezőbe írja be a figyelmeztető üzenet címét.

    Beírhatja például a Nincs rekordot.

  9. Válassza a makróműveletek legördülő listáját az Üzenetdoboz művelet alatt, majd válassza a MégseEvent lehetőséget.

  10. A Tervezés lapBezárás csoportjában kattintson a Mentés gombra.

  11. Kattintson a Tervezés lap Bezárás csoportjának Bezárás gombjára. Ha megjelenik egy figyelmeztető üzenet, és megkérdezi, hogy szeretné-e menteni a makró és a jelentéstulajdonság módosításait, kattintson az Igengombra, zárja be a jelentést, ha a rendszer kéri, mentse a módosításokat, és folytassa a következő lépésekkel a teszteléséhez.

A makró tesztelése

  • A navigációs ablakban kattintson a jobb gombbal a makrót tartalmazó jelentésre, és válassza a Nyomtatás lehetőséget. A kiválasztott beállításoktól függően az Access figyelmeztető üzenetet jelenít meg.

    Amikor az OK gombra kattintva bezárja az üzenetet, a MégseEvent művelet leállítja a nyomtatási műveletet. Mivel más eseményt nem adott meg (például megnyitja a jelentést megtekintésre), a jelentés bezárul.

Vissza a lap tetejére

Nyomtatás megszakítása VBA-kóddal

Az itt ismertetett VBA-kód nagyon hasonló az előző szakaszban leírt makróhoz – figyelmeztető üzenetet jelenít meg egy üres jelentés megnyitásakor, majd a figyelmeztető üzenet bezárásakor megszakítja a nyomtatási műveletet.

VBA-kód hozzáadása

  1. A navigációs ablakban kattintson a jobb gombbal a módosítani kívánt jelentésre, és kattintson a Tervező nézet parancsra.

    Megjegyzés: Az eljárás befejezéséhez használjon rekordokat nem tartalmazó jelentést.

  2. A Tervezés lap Megjelenítés/elrejtés csoportjában kattintson a Tulajdonságlap gombra.

    – vagy –

    Kattintson duplán a jelentés bal felső vagy jobb felső sarkában lévő mezőre a területi és nyelvi beállításoktól függően.

  3. Kattintson az Esemény fülre, majd a Nincs adat tulajdonságmezőben kattintson a Szerkesztő gomb .

    Megjelenik a Szerkesztő kiválasztása párbeszédpanel.

  4. Kattintson a Kódszerkesztő gombra,majd az OK gombra.

    Elindul a Visual Basic Editor, és megjelenít egy üres eseményműveletet.

  5. Írja be az alábbi kódot a Visual Basic Editorba, hogy a Report_NoData eljárás pontosan így jelenjen meg, amikor végzett:

    Private Sub Report_NoData (Cancel As Integer)
    MsgBox "There are no records to report", vbExclamation, "No Records"
    Cancel = True
    End Sub
  6. Ha végzett, kattintson a Fájl,majd a Mentés gombra.

  7. Kattintson a Fájl gombra,majd a Bezárás és visszatérés a Microsoft Accessbe parancsra.

  8. Zárja be a megnyitott jelentést, majd az Igen gombra kattintva erősítse meg a mentést.

  9. A navigációs ablakban kattintson a jobb gombbal a módosított jelentésre, és válassza a Nyomtatás lehetőséget. A kiválasztott beállításoktól függően az Access figyelmeztető üzenetet jelenít meg.

A Report_NoData eljárás az MsgBox függvény segítségével jeleníti meg a "Nincsenek rekordok, amelyek jelentéséhez szükséges rekordok" és az OK gombot. Ha az OK gombra kattint,az eljárásban a "Mégse=Igaz" sor arra utasítja az Accesst, hogy mondja le a jelentést. A Mégse argumentum automatikusan át lesz jelölve az esemény eljárásában, és az Access mindig ellenőrzi, amikor az esemény-eljárás befejeződik.

Vissza a lap tetejére

További segítségre van szüksége?

Office-jártasság bővítése
Oktatóanyagok megismerése
Új szolgáltatások listájának lekérése
Részvétel az Office Insider programban

Hasznos volt az információ?

×