Condividi:        

Invio E-Mail in modo automatico con Excel e VBA

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Invio E-Mail in modo automatico con Excel e VBA

Postdi ricky53 » 23/02/10 23:57

Ciao a tutti

Devo inviare, settimanalmente, tramite Excel, e-mail a 20-30 destinatari diversi con dei dati in allegato.
Ho un foglio con i vari indirizzi e con i dati da inviare, specifici per ogni destinatario.
Per inviare le varie e-mail DEVO utilizzare Microsoft Office Outlook (regole aziendali)

Utilizzo una macro da cui ho estratto la parte che mi interessa proporre come problema

Codice: Seleziona tutto
Sub Invia_email()
    Dim OutApp As Object
    Dim OutMail As Object
    Dim EmailAddr As String
    Dim Subj As String
    Dim BodyText As String
    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)
    With OutMail
        .To = "esempio@esempio.com"
        .CC = ""
        .BCC = ""
        .Subject = "OGGETTO=Prova di invio e-mail"
        .Body = "Questo è il testo della e-mail"
        .Send
    End With
    Set OutMail = Nothing
    Set OutApp = Nothing
End Sub

Eseguendo la macro ottengo un messaggio di avviso di Microsoft:

Immagine

Il messaggio mi compare per ogni invio di e-mail che faccio:

FASTIDIOSO

Ma le varie e-mail vengono inviate correttamente.

Ho provato, come suggerito in un forum, a togliere

“.send”

e sostituirlo con

SendKeys ("%(s)"), True

Ma in questo modo l’e-mail non viene inviata.


Chi di voi ha avuto il mio stesso problema?
Lo avete risolto?

Grazie.
Ciao da Ricky53
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Sponsor
 

Re: Invio E-Mail in modo automatico con Excel e VBA

Postdi Anthony47 » 24/02/10 00:51

Se hai outlook in italiano guarda questo post:
viewtopic.php?f=26&t=83835&start=20#p479791

(la shortcut per l' invio mail e' Alt-a; in inglese e' Alt-s)

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Invio E-Mail in modo automatico con Excel e VBA

Postdi ricky53 » 24/02/10 01:07

Ciao,
grazie per la tempestiva risposta.
Io la versione 2003 Italiana di M.O.

Il codice utilizzato nella discussione che mi hai indicato è lo stesso che utilizzo io, l'unica differenza è
".Display"
al posto di
".Send"
però in questo modo vedo l'e-mail preparata e devo fare l'invio manualmente per 20-30 volte. E' lo stesso problema del ".Send" sempre un tasto devo premere per 20-30 volte.

Al momento non posso provare "Alt+a" perchè non ho il collegamento con il nostro server di posta, ma mi sfugge cosa possa fare "Alt+a" per non farmi agire manualmente 20-30 volte.

Ciao da Ricky53
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: Invio E-Mail in modo automatico con Excel e VBA

Postdi Anthony47 » 24/02/10 01:11

Come detto tra parentesi "la shortcut per l' invio mail e' Alt-a [in italiano]; in inglese e' Alt-s". E puoi provare anche senza il collegamento al server...

Ciao.
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Invio E-Mail in modo automatico con Excel e VBA

Postdi Anthony47 » 24/02/10 01:17

Chiarisco:
-quando hai la mail visualizzata (ecco perche' l' uso di .Display e non di .Send) invii la mail con Alt-a (mentre se avessi la versione inglese servirebbe Alt-s)

Ciao.
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Invio E-Mail in modo automatico con Excel e VBA

Postdi ricky53 » 24/02/10 01:22

Ciao,

si è proprio questo il passo che voglio evitare: 20-30 volte "Alt+a" o "OK" con ".Send" è FASTIDIOSO

So che si può fare con una sequenza di comandi ma non ritrovo più dove l'ho letto (all'epoca non avevo l'esigenza di inviare e-mail con excel).

Ciao da Ricky53
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: Invio E-Mail in modo automatico con Excel e VBA

Postdi Anthony47 » 24/02/10 01:43

Ricky, perdona, ma e' la macro che spedisce Alt-a (Application.SendKeys "%a"), mentre tu vai a prendere il caffe'.

Ciao.
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Invio E-Mail in modo automatico con Excel e VBA

Postdi ricky53 » 24/02/10 02:06

Ciao,

è la prima prova che ho fatto e l'ho scritto nel mio intervento iniziale ma con Sendkey non viene spedita l'email!!! Miseriaccia!!!

Ho provato con vari comandi dati con Sendkey (trovati in giro nel web).
E' una protezione di M.O. che non consente l'invio di comandi, è scritto nel Supporto tecnico di Microsoft

.....
SendKeys
Outlook non consente l'accesso a determinate finestre di dialogo tramite il Microsoft Visual Basic o Microsoft Visual Basic comando SendKeys di applicazioni. Ciò evita che programmi dannosi eliminino automaticamente i messaggi di avviso aggirando le nuove caratteristiche di protezione
...

Con Microsoft Office Outlook comincio a pensare non sia possibile fare quello che mi necessita.

Ciao da Ricky53
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: Invio E-Mail in modo automatico con Excel e VBA

Postdi Anthony47 » 24/02/10 02:11

Devi usare .Display e non .Send
Inoltre devi non usare word come editor delle mail (Menu /Strumenti /Opzioni, tab Formato posta, togli la spunta a controllo Utilizza Microsoft Word per modificare i messaggi di posta elettronica)

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Invio E-Mail in modo automatico con Excel e VBA

Postdi Anthony47 » 24/02/10 02:12

Inoltre la mia macro invia "Alt-a", tu hai provato con "Alt-s".
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Invio E-Mail in modo automatico con Excel e VBA

Postdi ricky53 » 24/02/10 02:28

Caio,
ho usato tutte le combinazioni .display, .send, senza, con Alt+a, Alt+s,

Non ho provato a togliere Word come editor.
Provo.

Ma tu riesci a mandarle queste benedette e-mail senza il messaggio di avviso e senza fare nessun comando manuale?

Ciao da Ricky53
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: Invio E-Mail in modo automatico con Excel e VBA

Postdi Anthony47 » 24/02/10 02:34

Yes.
Togli word, altrimenti Alt-a finisce nel vuoto...

Ciao.
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Invio E-Mail in modo automatico con Excel e VBA

Postdi Anthony47 » 24/02/10 02:39

Insomma, questa e' la sequenza che funziona:
Codice: Seleziona tutto
'. . .
.Display 'or use .send
End With
'  (c)
Set OutMail = Nothing
'
'  (d)
Set OutApp = Nothing

    Application.Wait (Now + TimeValue("0:00:04"))
    Application.SendKeys "%a"
    Application.Wait (Now + TimeValue("0:00:04"))

L' ultima Wait serve se devi looppare, e potrebbe andare in crisi se la fai girare alla mezzanotte.

Ciao.
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Invio E-Mail in modo automatico con Excel e VBA

Postdi ricky53 » 24/02/10 02:41

Ciao,
tolto Word: nulla di fatto.
L'e-mail non parte, rimane aperta la pagina di M.O. pronta per l'invio.

Che scocciatura.

Ma a te viene inviata l'e-mail?
Hai potuto provare?

Ciao da Ricky53
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: Invio E-Mail in modo automatico con Excel e VBA

Postdi Anthony47 » 24/02/10 02:45

Nella finestra della mail da spedire, sulla barra degli strumenti, dovresti avere una icona con la scritta "Invia"; se SI, quale lettera e' sottolineata?

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Invio E-Mail in modo automatico con Excel e VBA

Postdi Anthony47 » 24/02/10 02:50

Ma a te viene inviata l'e-mail?
SI
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Invio E-Mail in modo automatico con Excel e VBA

Postdi ricky53 » 24/02/10 02:50

E' sottolineata la "a" di Invia
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: Invio E-Mail in modo automatico con Excel e VBA

Postdi ricky53 » 24/02/10 02:53

C'è qualche impostazione in M.O. che può impedire l'invio?

Però il supporto di M. diceva che non si possono utilizzare i comandi SendKey.

Vado a dormire vista l'ora.

A domani

Ciao da Ricky53
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: Invio E-Mail in modo automatico con Excel e VBA

Postdi Anthony47 » 24/02/10 02:54

Aumenta la wait a 10 secondi, per prova.

Se dai Alt-a da tastiera, parte la mail?
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Invio E-Mail in modo automatico con Excel e VBA

Postdi Flash30005 » 24/02/10 02:57

ricky53 ha scritto:Vado a dormire vista l'ora.


Ti auguro di sognare tante "letterine" :lol:

Buonanotte a tutti ;)
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Prossimo

Torna a Applicazioni Office Windows


Topic correlati a "Invio E-Mail in modo automatico con Excel e VBA":


Chi c’è in linea

Visitano il forum: Nessuno e 69 ospiti