Invio mail co allegato



  • Invio mail co allegato
    di Kolinar (utente non iscritto) data: 17/02/2016 21:11:34

    Buongiorno,

    ho preparato il codice che segue per inviare parte del foglio di lavoro e un allegato differente per ogni utente di una lista.
    Purtroppo ad ogni invio mi trovo si l'allegato corretto per l'utente che quelli delle precedenti mail.

    COme posso fare per far si che ad ogni utente della lista arrivi il solo allegato di sua competenza?

    Grazie a tutti
     
    Sub Invioemail()
    
    
        EmailAddr = Cells(Range("O97").Value, "AB").Value
        Allegato = Cells(Range("O97").Value, "AA").Value
        Subj = Range("AI95").Value
    
    
       ActiveSheet.Range("AI100:AU149").Select
       
       ActiveWorkbook.EnvelopeVisible = True
       
       With ActiveSheet.MailEnvelope
          .Introduction = ""
          .Item.To = EmailAddr
          .Item.CC = ""
          .Item.BCC = ""
          .Item.Subject = Subj
          .Item.Attachments.Add Allegato
          .Item.Send
       End With
    
    
    End Sub
    --------------------------------------------------------------
    Sub InviaAll()
    For I = 100 To Cells(Rows.Count, "O").End(xlUp).Row
        Range("O97") = I
        Call Invioemail
    Next I
    End Sub
    



  • di Marius44 data: 17/02/2016 22:21:53

    Ciao Kolinar
    da quel che dici "sembra" che Excel "memorizzi" un allegato dopo l'altro (anche se dalla sub che hai postato non si direbbe).

    Fai una prova: all'inizio della sub Invioemail inserisci una riga con Allegato=""

    Fai sapere. Ciao,
    Mario



  • di patel data: 18/02/2016 09:22:59

    sarebbe meglio allegare un file di esempio da testare





  • di kolinar (utente non iscritto) data: 20/02/2016 19:19:48

    Purtroppo non funziona



  • di scossa data: 20/02/2016 20:53:24

    Senza entrare nel merito del resto del codice, prova a modificare come da codice sotto.




    scossa's web site
    Se tu hai una mela, ed io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee.
    (George Bernard Shaw)

     
    With ActiveSheet.MailEnvelope
        nAttchs = .Item.attachments.Count '<- aggiunta
        For j = 1 To nAttchs              '<- aggiunta
          .Item.attachments(j).Delete     '<- aggiunta
        Next                              '<- aggiunta
        .Item.attachments.Add Allegato