
Option Explicit
Sub Mail()
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''''' ATTENZIONE RICHIEDE L'ATTIVAZIONE DELLA LIBRERIA MICROSOFT OUTLOOK 14.0 OBJECT LIBRARY '''''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''''''''' Per l'attivazione andare su "Strumenti", "Riferimenti", cercare e spuntare il nome '''''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Dim sAddr As String, sBody As String, sObj As String, sFrom As String, sAttc As String
Dim oOUT As Outlook.Application
Dim oML As MailItem
Dim x As Long, i As Long
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets("Email")
x = ws.Range("B" & ws.Rows.Count).End(xlUp).Row
Set oOUT = CreateObject("Outlook.Application")
For i = 6 To x
sAddr = Cells(i, 3) 'Destinatario
sObj = Cells(i, 4) 'Oggetto
sBody = Cells(i, 5) 'Testo
sAddr = Cells(i, 6) 'Allegato
sFrom = Cells(i, 2) 'Mittente
Set oML = oOUT.CreateItem(olMailItem)
With oML
.Attachments.Add sAttc
.To = sAddr
.Subject = sObj
.Body = sBody
'.SentOnBehalfOfName = sFrom
.Display
'.Send
End With
Next i
Set oOUT = Nothing
Set oML = Nothing
Set ws = Nothing
End Sub |
Option Explicit
Sub Mail()
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''''' ATTENZIONE RICHIEDE L'ATTIVAZIONE DELLA LIBRERIA MICROSOFT OUTLOOK 14.0 OBJECT LIBRARY '''''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''''''''' Per l'attivazione andare su "Strumenti", "Riferimenti", cercare e spuntare il nome '''''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Dim sTO As String, sCC As String, sBody As String, sObj As String, sFrom As String, sAttc As String
Dim oOUT As Outlook.Application
Dim oML As MailItem
Dim x As Long, I As Long
Dim ws As Worksheet
Dim oExp As Explorer
''SE GIA' APERTO UTILIZZO LA SESSIONE ESISTENTE DI OUTLOOK ALTRIMENTI LO APRO
On Error Resume Next
Set oOUT = GetObject(, "Outlook.Application")
If oOUT Is Nothing Then
Set oOUT = CreateObject("Outlook.Application")
End If
On Error GoTo 0
Set ws = ThisWorkbook.Worksheets("Foglio1")
With ws
x = .Range("A" & .Rows.Count).End(xlUp).Row
'CICLO CELLE E MANDO AD OGNI INDIRIZZO UNA MAIL
For I = 2 To x
sTO = .Cells(I, 1) 'Destinatario
sCC = .Cells(I, 2) 'Copia Conoscenza
sObj = .Cells(I, 3) 'Oggetto
sBody = "Il testo di questa mail è:" & Chr(13) & .Cells(I, 4) 'Testo
sAttc = .Cells(I, 5) 'Allegato
'sFrom = .Cells(i, 2) 'Mittente in caso si voglia modificare tra quelli disponibili in outlook
Set oML = oOUT.CreateItem(olMailItem)
With oML
.To = sTO 'Destinatario
.CC = sCC 'Copia Conoscenza
.BCC = "" 'Copia Nascosta
'CONTROLLO SU ESISTENZA FILE DA ALLEGARE
If Dir(sAttc) <> "" Then
.Attachments.Add sAttc 'Allegato
Else
sBody = sBody & Chr(13) & "ALLEGATO " & Chr(34) & ws.Cells(I, 5) & Chr(34) & " NON TROVATO!"
End If
.Subject = sObj 'Oggetto
.Body = sBody 'Testo della mail
'.SentOnBehalfOfName = sFrom 'Mittente in caso si voglia modificare tra quelli disponibili in outlook
.Display 'omettere se non si vogliono visualizzare tutte le mail
'.Send 'attivare se si vogliono inviare
End With
Next I
End With
Set oOUT = Nothing
Set oML = Nothing
Set ws = Nothing
End Sub
|
Option Explicit
Sub Mail()
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''''' ATTENZIONE RICHIEDE L'ATTIVAZIONE DELLA LIBRERIA MICROSOFT OUTLOOK 14.0 OBJECT LIBRARY '''''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''''''''' Per l'attivazione andare su "Strumenti", "Riferimenti", cercare e spuntare il nome '''''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Dim sTO As String, sCC As String, sBody As String, sObj As String, sFrom As String, sAttc As String
Dim oOUT As Outlook.Application
Dim oML As MailItem
Dim x As Long, I As Long
Dim ws As Worksheet
Dim bAllegato As Boolean
''SE GIA' APERTO UTILIZZO LA SESSIONE ESISTENTE DI OUTLOOK ALTRIMENTI LO APRO
On Error Resume Next
Set oOUT = GetObject(, "Outlook.Application")
If oOUT Is Nothing Then
Set oOUT = CreateObject("Outlook.Application")
End If
On Error GoTo 0
Set ws = ThisWorkbook.Worksheets("Foglio1")
With ws
x = .Range("A" & .Rows.Count).End(xlUp).Row
'CICLO CELLE E MANDO AD OGNI INDIRIZZO UNA MAIL
For I = 2 To x
''''''''''''INDIVIDUO ELEMENTI DELLA MAIL''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
sTO = .Cells(I, 1) 'Destinatario
sCC = .Cells(I, 2) 'Copia Conoscenza
sObj = .Cells(I, 3) 'Oggetto
sBody = "Il testo di questa mail è:" & Chr(13) & .Cells(I, 4) 'Testo
'sFrom = .Cells(i, 2) 'Mittente in caso si voglia modificare tra quelli disponibili in outlook
'CONTROLLO SU ESISTENZA FILE DA ALLEGARE
sAttc = .Cells(I, 5) 'Allegato
If Dir(sAttc) <> "" Then
bAllegato = True
Else
bAllegato = False
End If
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''''''''''''''CREO LA MAIL E UTILIZZO LE INFORMAZIONI RACCOLTE SOPRA''''''''''''''''''''''''''''''''''''''''
Set oML = oOUT.CreateItem(olMailItem)
With oML
.To = sTO 'Destinatario
.CC = sCC 'Copia Conoscenza
.BCC = "" 'Copia Nascosta
.Subject = sObj 'Oggetto
'SE ESISTE IL FILE DA ALLEGARE LO INSERISCO NELLA MAIL, ALTRIMENTI PASSO A CODICE HTML PER EVIDENZIARE ASSENZA
If bAllegato Then
.Attachments.Add sAttc 'Allegato
.Body = sBody 'Testo della mail
Else
sBody = Replace(sBody, Chr(13), " |
