Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Makro / Abfrage: Nach Druck Wert in ein Ja/Nein Feld schreiben

Begonnen von EBGRN7893, Januar 07, 2020, 16:24:27

⏪ vorheriges - nächstes ⏩

EBGRN7893

Hallo zusammen,

ich bin ganz neu im Forum und hoffe, dass ich nicht einen Beitrag erstelle, der schon 300 mal gelöst wurde. Ich konnte durch die Suche leider keine adäquate Hilfe finden.

Ich beschäftige mich relativ frisch mit Access 2016 und arbeite aktuell an der ersten Datenbank zur Erleichterung des Arbeitsalltages.  :)

Kurze Situationsbeschreibung:
Es geht um eine Tabelle, in der Anforderungen für Bescheinigungen von verschiedenen Usern über ein entsprechendes Formular eingetragen werden können. Nachdem einige Anforderungen zusammen gekommen sind, sollen diese per Button in einem Bericht (der einem Serienbrief ähnelt) ausgedruckt werden. Nach bzw. bei Druck des Berichts soll sich in die Tabelle, in der die Anforderungen stehen ein Haken im Feld "Datensatzerledigt" setzen. Über den Haken werden zwei Unterformulare gesteuert, welche offene bzw. gesendete Anforderungen zeigen.

Bis auf das "Haken Setzen" bei Druck der Berichte funktioniert alles. Bei manueller Steuerung der Haken werden beim nächsten Druckbefehl nur die "offenen Anforderungen" ausgedruckt. Kann das per Makro bzw. VBA halbwegs simpel gelöst werden?

Vielen Dank im Voraus für Anregungen und Feedback.

MfG EBGRN7893

DF6GL

Hallo,


grundsätzlich ist es arbeitstechnisch problematisch, einen Haken für "gedruckt" zu setzen, wenn der Druck angestoßen wird.  Es ist ja nie sicher, ob der Druck selber auch ohne Fehler ausgeführt wurde.

Allenfalls muss man einen  fehlerfreien Ausdruck manuell bestätigen.

Den Haken setzen könnte man mit einer Aktualisierungsabfrage oder auch per VBA in einem Berichtsereignis. Das beides hat aber den Nachteil, dass nicht geprüft werden kann, ob der Bericht nur als Seitenansicht geöffnet oder tatsächlich ausgedruckt wurde.

Beaker s.a.

@EBGRN7893
Die Problematik mit "automatisch" hat Franz ja aufgezeigt.
Ich würde es allerdings nie mit einem Ja/Nein-Feld machen, sondern mit einem
Datumsfeld. Dieses liefert mir nämlich eine zusätzl. (echte) Information. Die
Filterung gedr./nicht gedr. läuft dann über diese Datumsfeld (unerl. = Feld Is NULL)
gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

EBGRN7893

Guten Morgen zusammen,

vielen Dank für die schnelle Hilfe. Habe es mit einem weiteren Button gelöst.
Der User druckt also erst die Berichte, schaut ob diese Vollständig und i.O. sind und kann dann per Button die Datensätze erledigen. Habe den Haken außerdem gegen ein Feld "Versanddatum" getauscht.

Besten Dank nochmal.

Beaker s.a.

@EBGRN7893
ZitatHabe es mit einem weiteren Button gelöst.
Würde ich auch nicht so machen, da es eine "freiwillige" Aktion des Anwenders
erfordert. Eine MsgBox beim Schliessen des Berichtes zwingt den User die Frage
zu beantworten.
gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

Joss

Hallo EBGRN7893,

Zitat von: Beaker s.a. am Januar 08, 2020, 14:17:45
Eine MsgBox beim Schliessen des Berichtes zwingt den User die Frage zu beantworten.


als Ergänzung noch ein Codeschnipsel aus einem meiner Berichte.

Private Sub Report_Close()

If MsgBox("War der Druck erfolgreich?", vbYesNo + vbQuestion + vbDefaultButton2) = vbYes Then
 
   ' Aktionen bei erfolgreichem Druck

End If
   
End Sub


Gruß
Josef

EBGRN7893

Hallo Joss,

vielen Dank für den Lösungsvorschlag. Ich werde versuchen das noch einzubauen und gebe dann nochmal Feedback, ob's geklappt hat.