Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Vorauswahl Formular

Begonnen von julle, Dezember 29, 2015, 10:00:45

⏪ vorheriges - nächstes ⏩

julle


Dim strPrinterOld As String

DoCmd.RunCommand acCmdPrint

strPrinterOld = Application.Printer.DeviceName

Application.Printer = Application.Printers("NameEinesAnderenDruckers")

DoCmd.RunCommand acCmdPrint

Application.Printer = Application.Printers(strPrinterOld)


so ist mein Ansatz aber er druckt im moment zweimal auf den gleichen Drucker. Liegt es am Druckernamen (zumal alles Netzwerkdrucker sein sollen)?

Entschuldigt meine Ausdrucksweise, aber arbeite daran ;)

MaggieMay

Hi,

teste das mal im Unterbrechungsmodus und mache eine kleine Pause vor dem zweiten Print, um zu sehen, ob der Code evtl. schneller ist als der Drucker. ;-)
Freundliche Grüße
MaggieMay

julle

Zitat von: MaggieMay am Januar 21, 2016, 17:11:18
Hi,

teste das mal im Unterbrechungsmodus und mache eine kleine Pause vor dem zweiten Print, um zu sehen, ob der Code evtl. schneller ist als der Drucker. ;-)
wie funktioniert das mit dem Unterbrechen? habe versucht per F9 eine Unterbrechung hinzuzufügen, das ist aber "nicht zulässig" in dieser Zeile.

DF6GL

#48
Hallo,

ich denke eher, dass meine Codezeilen nicht richtig abgelesen wurden...  8)

(und evtl. der Druckername nicht genau stimmt. Unter Geräte und Drucker und den Eigenschaften des bestimmten Druckers den Namen per Copy&Paste in den Code übertragen)
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

julle

Zitat von: DF6GL am Januar 21, 2016, 17:37:40
Hallo,

ich denke eher, dass meine Codezeilen nicht richtig abgelesen wurden...  8)

(und evtl. der Druckername nicht genau stimmt. Unter Geräte und Drucker und den Eigenschaften des bestimmten Druckers den Namen per Copy&Paste in den Code übertragen)
:D das hatte ich fast übersehen
kannst du mir das kurz erläutern? Weil in deinem Fall ja ein Druck VOR ausfüllen des Formulars angestoßen werden würde, oder?


DF6GL

Hallo,

nun ja, das wäre tatsächlich so.  8)


Wenn Du erst nach dem Ausfüllen drucken willst,

dann bau halt eine Schaltfläche in das (die) Formular(e) ein, das den Druck mit Docmd.Printout (!) anstößt.

Das Laden des Forms erübrigt sich an dieser Stelle. Die Schaltfläche kann übrigens so eingestellt werden, dass sie nicht im Ausdruck erscheint...
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

julle

Zitat von: DF6GL am Januar 21, 2016, 18:09:04
Hallo,

nun ja, das wäre tatsächlich so.  8)


Wenn Du erst nach dem Ausfüllen drucken willst,

dann bau halt eine Schaltfläche in das (die) Formular(e) ein, das den Druck mit Docmd.Printout (!) anstößt.

Das Laden des Forms erübrigt sich an dieser Stelle. Die Schaltfläche kann übrigens so eingestellt werden, dass sie nicht im Ausdruck erscheint...
also er druckt jetzt auch zweimal, aber nutzt beide Male den Standartdrucker. da scheint der Wurm beim Wechseln des Druckers drin zu sein

DF6GL

Hallo,

vielleicht änderst Du ja den Drucker zu sich selber...
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

julle

#53
Hi!
Nee, selbst wenn ich den Drucker zweimal manuell festlege kommen die Druckaufträge nur auf einen...

Application.Printer = Application.Printers("hp LaserJet 3015 PCL 5")

DoCmd.PrintOut

Application.Printer = Application.Printers("An OneNote 2010 senden")
DoCmd.PrintOut

MaggieMay

Hallo,
Zitat von: julle am Januar 21, 2016, 17:26:11
wie funktioniert das mit dem Unterbrechen?
setze einen Haltepunkt in die Prozedur und löse das Ereignis aus dem Formular heraus aus.
Freundliche Grüße
MaggieMay

julle

#55
Stop

Application.Printer = Application.Printers("\\**.**.**\BD-P30339")

MsgBox Application.Printer.DeviceName

Stop

DoCmd.PrintOut

Stop


Application.Printer = Application.Printers("An OneNote 2010 senden")

MsgBox Application.Printer.DeviceName
Stop

DoCmd.PrintOut




--> Also habe nun "stop" als Unterbrechung eingefügt (funktioniert als Haltepunkt). Lasse mir zusätzlich durch "MsgBox Application.Printer.DeviceName" den aktuellen Drucker anzeigen nach Wechseln des Standartdruckers.

Die richtigen Drucker werden angezeigt, allerdings wird der Druck mit einem ganz anderen Drucker durchgeführt (in dem Fall ein PDFCreator)

habt ihr ne Idee?  :o


EDIT: Bei Seite Einrichten war "spezieller Drucker" angehakt .....  ;D Nu gehts!!!


julle

Hallo nochmal, ich hab nichts passendes bei der Recherche gefunden, deswegen schreib ichs mal hier rein.

ich habe im Formular ein Kombinationsfeld mit Ländern. Bei einem bestimmten Formular muss nun für verschiedene Länder eine entsprechende E-Mail Adresse hinterlegt werden an die das Formular dann geschickt werden soll.

Das Formular schicke ich per "DoCmd.SendObject acSendForm" los. Wie verknüpfe ich gewähltes Land mit entsprechender E-Mail Adresse? Es sind nur 8 Länderspezifische E-Mail-Adressen und nur in diesem einen Formular (von 24).

Es macht mMn weniger Sinn das global in die Ländertabelle zu pflegen, weil bei anderen Formularen die Länder keine Rolle spielen.

Erster Schritt wäre die E-Mail Adresse als Variable darzustellen. Dann muss eine Zuordnung stattfinden. Weiter reichen meine VBA-Skills nicht, könnt ihr mir da Hinweise geben?

Danke und Grüße
Julian

MaggieMay

Hallo,

ich würde dir dringend dazu raten, die Email-Adressen in die Ländertabelle zu packen (oder in eine separate Tabelle), weil das so einfach leichter pflegbar ist.
Freundliche Grüße
MaggieMay

julle

Zitat von: MaggieMay am Januar 27, 2016, 18:21:02
Hallo,

ich würde dir dringend dazu raten, die Email-Adressen in die Ländertabelle zu packen (oder in eine separate Tabelle), weil das so einfach leichter pflegbar ist.

Das ist wahrscheinlich die bessere Idee, hab ich nun auch gemacht (in einer seperaten Tabelle), aber wie geht es nun weiter?

MaggieMay

ZitatDas Formular schicke ich per "DoCmd.SendObject acSendForm" los.
Das wäre dann wohl die Stelle an der du dir zunächst einmal die Email-Adresse besorgen musst, bspw. per DLookUp auf die neu eingerichtete Tabelle. Das Landkennzeichen sollte sich aus dem aktuellen Datensatz entnehmen lassen.
Freundliche Grüße
MaggieMay