|
Login

TOPIC: creazione mail pescando destinatari da file excel

creazione mail pescando destinatari da file excel 9 years 8 months ago #1105

  • gina
  • gina's Avatar
  • OFFLINE
  • Fresh Boarder
  • Posts: 10
  • Karma: 0
ciao a tutti,
mi trovo ad avere un mega file excel in cui ogni riga contiene una serie di info su una persona/azienda, tra cui l'indirizzo mail. quindi ho una colonna con tutti gli indirizzi mail che mi interessano.
è possibile da outlook inviare una mail ad ognuno di questi mìindirizzi in automatico? quindi fare in modo che outlook generi n mail con un destionatario diverso nel campo A?
spero di essere stata chaira, grazie a chi vorrà rispondermi!

gina
The administrator has disabled public write access.

Re:creazione mail pescando destinatari da file excel 9 years 8 months ago #1168

  • mauro27
  • mauro27's Avatar
  • OFFLINE
  • Platinum Boarder
  • Posts: 636
  • Thank you received: 9
  • Karma: 42
ti invio un file in allegato
modificalo come preferisci

ti consiglio di installare anche un programmino che ti clicca il si' (cerca su google "outlook click yes")

mi raccomando non spammare

ciao
mauro

Attachment invia_email.xls not found

Attachments:
mauro27 - excel 2010 su Win7 - excel 2011 su Mac
_________________________________________________
"per ogni problema esistono almeno 3 soluzioni, l'importante è trovare quella più semplice" - Mauro
"Ogni problema ha tre soluzioni: la mia soluzione, la tua soluzione, e la soluzione giusta" -...
The administrator has disabled public write access.

Re:creazione mail pescando destinatari da file excel 9 years 8 months ago #1169

  • Gianclaudio
  • Gianclaudio's Avatar
  • OFFLINE
  • Platinum Boarder
  • Posts: 397
  • Karma: 23
mitico Giaccaglini...
Confermo che su Excel 2007 va benissimo

Io ho iniziato qualche decennio fa con il VBA leggendo un suo manualetto pubblicato sul sito di Microsoft.

Passa il tempo :)
The administrator has disabled public write access.

Re:creazione mail pescando destinatari da file excel 9 years 8 months ago #1174

  • mauro27
  • mauro27's Avatar
  • OFFLINE
  • Platinum Boarder
  • Posts: 636
  • Thank you received: 9
  • Karma: 42
Ciao Gianclaudio

dato che conosci bene il grande inventore delle funzioni allegate

copiate / incollate a piacere nelle funzioni poi usate
perche' non ce le spieghi un po' ?

sono contento che funzionano, ma mi piacerebbe capirle !

ciao
mauro
mauro27 - excel 2010 su Win7 - excel 2011 su Mac
_________________________________________________
"per ogni problema esistono almeno 3 soluzioni, l'importante è trovare quella più semplice" - Mauro
"Ogni problema ha tre soluzioni: la mia soluzione, la tua soluzione, e la soluzione giusta" -...
The administrator has disabled public write access.

Re:creazione mail pescando destinatari da file excel 9 years 8 months ago #1175

  • davideba
  • davideba's Avatar
  • OFFLINE
  • Platinum Boarder
  • Posts: 448
  • Karma: 33
ciao Mauro,
premesso che non uso outlook e non è neppure installato sul mio pc,
provo a spiegarti a grandi linee come funziona una routine come quella che usi nel tuo file per spedire le mail.
tu scrivi:
Sub invia_email()

    variabileEmailDelDestinatario = Range("destinatario").Value

Set VarOggApplicazioneOutlook = CreateObject("Outlook.Application") '(1)
Set VarOggMailInOutlook = VarOggApplicazioneOutlook.CreateItem(olMailItem) '(2)

VarOggMailInOutlook.To = variabileEmailDelDestinatario '(3)
VarOggMailInOutlook.Subject = Range("oggetto").Value '(4)
VarOggMailInOutlook.Body = Range("testo").Value '(5)

VarOggMailInOutlook.Display '(6)
VarOggMailInOutlook.Send '(7)

End Sub

con l’istr (1) crei una nuova istanza di Outlook e contemporaneamente crei una sorta di puntatore a questa istanza.
il puntatore lo 'agganci' con il comando Set; VarOggApplicazioneOutlook è una cosiddetta 'variabile oggetto'
da ora in poi potrai comandare attraverso il codice VBA il tuo Outlook: dovrai sempre referenziarlo utilizzando la variabile VarOggApplicazioneOutlook

(2) CreateItem presumibilmente è un metodo di Outlook, che ti consente di creare un nuovo elemento di Outlook; di certo dovrai specificare da qualche parte quale tipo di elemento vuoi creare (appuntamento, contatto, mail): così a occhio direi che 'olMailItem' è una costante che individua il tipo eMail
come vedi l'istruzione CreateItem, che deve essere eseguita all’interno dell’oggetto Outlook, è preceduta dalla variabile che punta ad Outlook (VarOggApplicazioneOutlook.CreateItem...)
in questa istruzione (2) crei una nuova variabile oggetto che è 'VarOggMailInOutlook', che punterà alla mail che hai appena creato: da ora in poi ogni istruzione che inizia con 'VarOggMailInOutlook' sarà eseguita su quella mail

(3), (4) e (5) senza dubbio 'To', 'Subject' e 'Body' sono proprietà dell’oggetto eMail alle quali tu attribuisci un valore con queste istruzioni. in particolare l’oggetto eMail sul quale agisci è quello agganciato dalla tua variabile oggetto 'VarOggMailInOutlook' (che infatti precede il nome della proprietà sulla quale agisci)

(6) Display è senza dubbio un metodo che, applicato all’oggetto eMail, ti consente di visualizzarlo (probabilmente in una sua finestra). ricordati infatti che fino a questo momento hai creato una mail ma non hai mai espresso alcuna istruzione che ti consente di vederla sul tuo monitor.

e (7) è di certo un altro metodo che spedisce la mail
The administrator has disabled public write access.

Re:creazione mail pescando destinatari da file excel 9 years 8 months ago #1176

  • davideba
  • davideba's Avatar
  • OFFLINE
  • Platinum Boarder
  • Posts: 448
  • Karma: 33
mi stavo dimenticando una cosa.
l'istruzione: "VarOggApplicazioneOutlook.CreateItem(olMailItem)"
contiene un metodo 'CreateItem' che viene eseguito sull'oggetto Outlook (perché è a questo che punta la variabile VarOggApplicazioneOutlook) e non ci sono problemi. ma la stessa istruzione contiene anche una costante 'olMailItem' questa costante in realtà rappresenta un valore numerico: l'istruzione .CreateItem si aspetta di certo il passaggio di un parametro numerico e quando esegui la routine la costante viene sostituita dal suo corrispondente valore numerico. per ché questa cosa funzioni, devi inserire tra i riferimenti disponibili quello alla libreria MS Outlook, altrimenti per il VB di excel olMailItem è una roba senza significato.

io non ho la possibilità di verificare se è effettivamente così, ma potrei anche scommetterci addirittura un caffè...
The administrator has disabled public write access.
Time to create page: 0.738 seconds