Condividi:        

MACRO per inviare numerose mail ad un unico indirizzo ma con

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

MACRO per inviare numerose mail ad un unico indirizzo ma con

Postdi Natalia79 » 20/05/20 07:25

Buongiorno.
Ho necessità di inviare giornalmente un numero considerevole di mail ad uno stesso indirizzo, ma con allegati diversi. Gli allegati sono pdf contenuti in una cartella sul desktop. Ho creato un file excel con tre colonne.
A: indirizzo mail
B: Percorso cartella
C: nome pdf da allegare

Sino all'invio delle mail ci siamo anche perchè non mi serve nulla di specifico tipo corpo mail o oggetto, ma gli allegati non me li invia, non riesco a capire come inserire il percorso da cui deve attingere, nella macro.
Specifico che sono davvero una neofita, quindi potrebbe essere una cavolata, ma non ci sono arrivata.
Grazie del vostro tempo
Natalia79
Newbie
 
Post: 1
Iscritto il: 20/05/20 07:07

Sponsor
 

Re: MACRO per inviare numerose mail ad un unico indirizzo ma

Postdi Anthony47 » 20/05/20 11:03

Intanto "Benvenuta nel forum"
Per inserire un allegato devi usare una istruzione del tipo
Codice: Seleziona tutto
  .Attachments.Add ("C:\Percorso\NomeFile.ext") 


Immagino che usi un ciclo For I=1 to XXX per "spazzolare" l'elenco delle email e dei relativi allegati; poiche' il Percorso e' in colonna B e il nome file e' in colonna C allora l'istruzione precedente diventerebbe
Codice: Seleziona tutto
  .Attachments.Add (Cells(I,"B").Value & Cells(I,"C").Value)


NB: il percorso in Colonna B deve essere completo, e deve includere lo "\" finale, es D:\Directory\SubDirectory\; il nome file deve includere l'estensione, es PIPPO.pdf

Mi chiedo anche perche' devi inviare mail diverse con allegati diversi, visto che potresti allegare a una sola mail piu' allegati, usando piu' istruzioni .Attachments.Add ("C:\Percorso\NomeFile.ext") per la stessa email.

Se in questo modo non risolvi allora sara' utile avere il formato reale del tuo file e il codice della macro che utilizzi

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

Re: MACRO per inviare numerose mail ad un unico indirizzo ma

Postdi Ricky0185 » 20/05/20 21:12

Vedo che Anthony ti ha già indicato la soluzione.
Siccome io uso molto il multinvio e per di più con il multiattach, ho perfezionato questa macro che vorrei sottoporre ad Anthony
Codice: Seleziona tutto
Option Explicit
Sub exAddAttachments()
Dim objol As Object
Dim objmail As Object
Dim objFolder As Object
Dim strFolder As String
Dim fso As Object
Dim fsFolder As Object
Dim fsFile As Object
    Set objFolder = CreateObject("Shell.Application"). _
                        BrowseForFolder( _
                            0, "Scegli la Dir dove prelevare i file.", 0, Empty)
   
    On Error GoTo errhndl
    If Not objFolder Is Nothing Then
        strFolder = objFolder.Items.Item.Path
    Else
        MsgBox "Error picking a folder.", 0, ""
        Exit Sub
    End If
   
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set fsFolder = fso.GetFolder(strFolder)
    Set objol = CreateObject("Outlook.Application")
    Set objmail = objol.CreateItem(0)
   
    With objmail
        .To = "Mail Destinatario" ' mettere l'email del destinatario
        .Subject = "Ticket ..." 'oggetto
        .Body = "test" 'corpo messaggio
        .NoAging = True
       
        For Each fsFile In fsFolder.Files
            If fsFile.Name Like "*.doc" Then ' correggere doc con il tipo di file da allegare
                .Attachments.Add strFolder & "\" & fsFile.Name
            End If
        Next
       
        .Display ' metti .send per farla partire in automatico o .save per salvarla
       
    End With
   
errhndl:
    Set objFolder = Nothing
    Set fso = Nothing
    Set fsFolder = Nothing
    Set objol = Nothing
    Set objmail = Nothing
End Sub

per farmi suggerire come far si che partano TUTTI i file doc e pdf e/o excel. Ho provato ad intgrare con "and" o "or" ma sempre il primo tipo allega.
Inserita in modulo standard parte da qualunque foglio, anche bianco, ovvio che i dettagli vanno inseriti nella macro. Ti chiede da quale dir prelevare i file.
Ricky0185
Utente Senior
 
Post: 257
Iscritto il: 10/12/19 20:38

Re: MACRO per inviare numerose mail ad un unico indirizzo ma

Postdi Anthony47 » 21/05/20 01:01

Adesso pero' ci troviamo con due quesiti nella stessa discussione; vediamo...

Quindi la domanda e' come allegare sia .doc che .pdf e xls?
Se Sì, allora devi articolare meglio l'If che analizza il tipo di file:
Codice: Seleziona tutto
    If fsFile.Name Like "*.doc" Or _
      fsFile.Name Like "*.pdf" Or _
      fsFile.Name Like "*.xls" Then ' correggere doc con il tipo di file da allegare


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

Re: MACRO per inviare numerose mail ad un unico indirizzo ma

Postdi Ricky0185 » 21/05/20 07:42

Mannaggia, non mi funzionava con "or" perchè non ripetevo l'fsFile.Name Like.
Mi sono accodato a questo 3d per non aprirne un altro per una cosa così banale.
Grazie comunque.
Ciao
Ricky0185
Utente Senior
 
Post: 257
Iscritto il: 10/12/19 20:38


Torna a Applicazioni Office Windows


Topic correlati a "MACRO per inviare numerose mail ad un unico indirizzo ma con":


Chi c’è in linea

Visitano il forum: Ricky0185 e 35 ospiti