neueradmuser
Goto Top

Tägliche e-mail aus access datenbank schicken - Makro

Hi, ich habe ein -zurzeit für mich- mittelschweres Problemchen...

Habe grundsätzlich Ahnung von Access, bin aber seid anno tuck raus aus access.
Wir haben hier eine *.mdb in welcher div. Berichte erstellt wurden.
desweiteren gibt es 2 Makros welche anscheinend zum E-Mail versand genutzt werden.

auf dem desktop liegt nun eine verknüpfung direkt auf das Makro in der Datenbank und im Taskplaner gibt es einen Task der täglich zu einer definierten Uhrzeit dieses Makro ausführt welches dann halt die E-Mail verschickt.... das ist das was ich jetzt auf die schnelle feststellen konnte.

2 Probleme:
-Die Mail kommt nicht immer / nur sporadisch
-Access schließt sich nicht von alleine. Ein 2-ter Task ist nötig welcher Access abschießt

Der Taskmaner endete heute z.b. mit der Meldung 0x1 ... eine soeben manuelle Ausführung des Makros verschickte die angeforderte Mail Problemlos...

gibt es eine elegantere Lösung? evtl. ohne Taskplaner direkt aus Access heraus?

dank & Gruß

Content-Key: 155726

Url: https://administrator.de/contentid/155726

Printed on: April 20, 2024 at 02:04 o'clock

Member: NetWolf
NetWolf Nov 24, 2010 at 21:25:56 (UTC)
Goto Top
Moin Moin,

das ist schon sehr ungewöhnlich und unüblich.

Um eine Mail aus Access zu versenden, muss der PC und Access laufen und es kann nur eine Mail mit Bericht verschickt werden, wenn vorher ein Bericht erstellt wurde.

Grundsätzlich: ja, das ist möglich, wenn die Bedingungen oben erfüllt werden.

Kenntnisse in VBA vorausgesetzt kannst du das direkt mit Access erledigen.
btw von welchem Access reden wir?
btw von welchem Mailprogramm reden wir?
btw um welches Betriebssystem handelt es sich?


Grüße aus Rostock
Wolfgang
(Netwolf)
Member: neueradmuser
neueradmuser Nov 24, 2010 at 21:48:44 (UTC)
Goto Top
hi,
access 2007
server 2003
gesendet wird glaub ich von outlook 2007

vba gaaaanz grob (eher noch schlechter als access)...

access wird kurz vor dem mailversand ja aufgemacht (ich denke mal vom makro) und der bericht wird dann erstellt... dieser wird dann anschließend als *.txt verschickt

mir kam das ganze auch sehr ungewöhnlich und komisch vor...
Mitglied: 83928
83928 Nov 25, 2010 at 07:33:55 (UTC)
Goto Top
hi,
prinzipiell ist die Taskplaner Lösung nicht unbedingt schlecht. Wie wird das Makro gestartet? Automatisch, wenn die Datei geöffnet wird oder übergibst Du beim Start (via Taskplaner) einen Parameter?

Zu den 2 Problemen:
1.) Erweitere das Makro um Log-Funktionen, so kommst Du kannst Du den Programmablauf nachvollziehen.
2.) Access beenden geht mit DoCMD.Quit. Wenn das nicht klappt, liegt ein Fehler im Programmablauf vor, dem Du mit Punkt 1 auf die Schliche kommst.

Gruß.

P.S. Wir reden doch hier von VBA-Makros und nicht von den 'zusammenklickbaren Makros', oder
Member: neueradmuser
neueradmuser Nov 27, 2010 at 21:55:46 (UTC)
Goto Top
Hi, habe nun ein bißchen getestet...

für das beenden habe ich nun in das makro ein "verlassen" eingebaut.
das geht soweit auch.

aber mit dem email versenden harperts total.
manuell geht es immer, mit dem taskplaner nur nach lust und laune...
msaccess wird geöffnet (sieht man im taskmanager) und das wars dann.. mehr sieht man nicht)

egal ob angemeldet oder abgemeldet oder gesperrt .... egal ob der geplante task als dom-admin ausgeführt wird oder system oder sonstwas...
total kurios. als fehlermeldung erhält man manchmal 0x1

geplanter task wird aufgerufen: "programmfad für Access" "Pfad zur mdb" /x Makroname
Member: NetWolf
NetWolf Nov 29, 2010 at 20:44:12 (UTC)
Goto Top
Moin Moin,

könntest du den "Pfad zur MDB" mal aufschlüsseln?
Wie startest du die MDB manuell?


Grüße aus Rostock
Wolfgang
(Netwolf)
Member: neueradmuser
neueradmuser Nov 29, 2010 at 21:55:49 (UTC)
Goto Top
hi, der mdb-Pfad ist ein netzwerkpfad --> \\server\ordner1\ordner2\access.mdb
und ja er gehört zu den vertrauenswürdigen speicherorten in access 2007

es könnte sein das es ein "rechte problem" ist wenn der server abgemeldet oder gesperrt ist. das der task zwar mit den dom-admin daten aufgerufen wird (was wir auch sehen) aber dann die unterinstanzen keine entsprechenden Rechte mehr erhalten. Bin der Meinung irgendwo sowas gehört/gelesen zu haben

die mdb starte ich manuell entweder per verknüpfung auf dem server (welche dann auf einen anderen Server führt)
oder direkt auf dem anderen Server im entsprechenden Unterverzeichnis
oder meinetwegen direkt die verknüpfung des makros auf dem desktop

soll es echt so schwer sein pünktlich 1x am tag automatisch zu einer definierten zeit eine mail rauszujagen?! *confused*
Member: NetWolf
NetWolf Nov 30, 2010 at 21:15:06 (UTC)
Goto Top
Moin Moin,

nein es ist nicht schwierig, sagte der Wissende face-smile
Lasse Access einfach laufen, und wenn du dann ein Formular mit Timer offen hast, kannst du regelmäßig dein Mail-versende-Makro starten.

Wie:
- Formular im Entwurfmodus öffnen
- Formular - Eigenschaften öffnen
- Zeitgeberintervall eingeben (Achtung es sind Millisekunden)
- Bei Zeitgeber dein Makro hinterlegen/aufrufen
- fertig

60 Millisekunden = 1 Sekunde
60 Sekunden = 1 Minute
60 Minuten = 1 Stunde
24 Stunden = 1 Tag

60*60*60*24 = 5184000 Millisekunden

In dem Moment, wo du das Formular normal öffnest, startet der Timer!
Schließt du das Formular, stoppt der Timer.

Grüße aus Rostock
Wolfgang
(Netwolf)