Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Programmeren

[Access] Automatisch printen

w.bauhaus
8 antwoorden
  • Hallo,

    Ik probeer onderstaande code te gebruiken om een rapport te printen, daarna af te sluiten, dan naar het volgende record te gaan (voor een nieuwe klantnaam welke gebruikt wordt in de query waar het rapport van afhankelijk is) en dan weer te printen.

    [code:1:1925214794]Private Sub KNP_AFRUKKEN_Click()
    On Error GoTo Err_KNP_AFRUKKEN_Click


    DoCmd.GoToRecord , , acFirst

    Dim i
    Dim stDocName As String
    stDocName = "RPTWEEKOVERZICHT"

    For i = 1 To Me![FRM_WEEKOVERZICHT_AANTAL].Form![TXT_AANTAL] - 1

    DoCmd.OpenReport stDocName, acNormal

    DoCmd.GoToRecord , , acNext


    Next


    Exit_KNP_AFRUKKEN_Click:[/code:1:1925214794]

    Als ik de zelfde code gebruik maar dan ipv een printopdracht bijv een foutmelding laat zien dan werkt het wel.
    Wat gaat er mis?

    ps. Soortgelijke code gebruik ik ook in een andere toepassing om automatisch email te versturen en ook daar werkt het prima. Het gaat dus fout met de printopdracht?!?
  • Waar staat in bovenstaande code de printopdracht??
    Misschien heb je aan wat informatie uit de help.

    Groeten, Wouter


    PrintOut, methode


    Met de methode PrintOut wordt de actie Afdrukken (PrintOut) uitgevoerd in Visual Basic. Zie het onderwerp over de actie voor meer informatie over de werking van de actie en de bijbehorende argumenten.

    Syntaxis

    DoCmd.PrintOut [afdrukbereik][, vanafpagina, totpagina][, afdrukkwaliteit][, exemplaren][, exemplarensorteren]

    De methode PrintOut kent de volgende argumenten:

    Argument Beschrijving
    afdrukbereik Een van de volgende ingebouwde constanten:
    acPrintAll (standaard)
    acSelection
    acPages
    Als u niets opgeeft bij dit argument, wordt de standaardinstelling (acPrintAll) gebruikt.
    vanafpagina Een numerieke expressie die een geldig paginanummer in het actieve formulier of gegevensblad aangeeft. Dit argument is verplicht als u acPages opgeeft voor het argument afdrukbereik.
    totpagina Een numerieke expressie die een geldig paginanummer in het actieve formulier of gegevensblad aangeeft. Dit argument is verplicht als u acPages opgeeft voor het argument afdrukbereik.
    afdrukkwaliteit Een van de volgende ingebouwde constanten:
    acDraft
    acHigh (standaard)
    acLow
    acMedium
    Als u niets opgeeft bij dit argument, wordt de standaardinstelling (acHigh) gebruikt.
    exemplaren Een numerieke expressie. Als u niets opgeeft bij dit argument, wordt de standaardinstelling (1) gebruikt.
    exemplarensorteren Gebruik True (–1) als u afdrukken wilt sorteren en False (0) als u wilt afdrukken zonder sorteren. Als u niets opgeeft bij dit argument, wordt de standaardinstelling (True) gebruikt.


    Aanvullende informatie

    U hoeft niets op te geven bij een optioneel argument midden in de syntaxis, maar dan moet u wel een komma voor het argument opnemen. Als u een argument aan het eind achterwege laat, hoeft u geen komma op te nemen na het laatste argument dat u opgeeft.
  • << DoCmd.OpenReport stDocName, acNormal >>

    Dat is -volgens mij- de print opdracht.
    Access gebruikt trouwens VBA ipv van Visual basic, weet niet of dat nog uitmaakt?

    De eerste printopdracht gaat goed, daarna gaat hij de fout in.
  • Bovenstaande komt uit mijn VBA Access help, zal dus wel werken.

    En je hebt wel gelijk, ik dacht dat DoCmd.OpenReport alleen het report opende, maar hij print hem inderdaad meteen uit. Maar ik denk dat hij alleen de eerste uitprint omdat bij de volgende het Rapport al geopend is!
    Volgens mij werkt het wel als je steeds het rapport sluit in de loop, of probeer het eens met Docmd.printout i.p.v. met DoCmd.OpenReport

    Groeten, Wouter
  • Nope, hij doet het nog steeds niet.

    Het rapport is trouwens niet geopend en hoeft dus ook niet gesloten te worden. Ik heb het wel nog wel geprobeerd maar ook dat had geen resultaat.

    Vreemd…

    ps. Waarschijnlijk is het iets heel simpels.
    Ben benieuwd of het vanavond -als het hier iets drukker is- opgelost wordt.
  • Tja dan weet ik het ook niet meer hoor!

    Succes verder.
  • Als je een rapport uitprint, gekoppeld aan een query worden toch alle records afgedrukt welke in de query geselecteerd zijn?
    Elk op een eigen blad.

    Waarom dus het rapport telkens aanroepen met een andere klantennaam?

    Maak een query waarin de gewenste klanten geselecteerd worden en koppel hieraan je rapport.


    Wim
  • Dat weet ik wel maar dat werkt in dit geval niet omdat iedere keer als het rapport geprint wordt er automatisch een (oplopend) bonnummer op gezet wordt. Als je ze niet een voor een uitprint dan blijft dat nr steeds hetzelfde en dat mag niet.

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.