Invio mail automatica



  • Invio mail automatica
    di Marco (utente non iscritto) data: 21/09/2010

    Ciao buongiorno, sono nuovo del forum ho bisogno di un aiuto.

    ho fatto questa macro che invia automaticamente mail da un foglio excel però ho 2 problemi:
    1)nell'indirizzo destinatario il valore rimane = ad e-mail mancante fino a che il valore in un altro campo non viene valorizzato.
    posso quindi aggiungere un comando che indica che se il valore destinatario e-mail è = ad e-mail mancante allora non aggiungere nel campo destinatario in invio.
    2)una volta eseguita, la macro deve aggiungermi in una colonna nascosta una x e al prossimo invio tutte le e-mail con accanto una x non devono essere nuovamente inviate.
    qualcuno può aiutarmi?
    grazie

    sub invia_email_ultima_buona()
    dim outapp as object
    dim outmail as object
    dim emailaddr as string
    dim subj as string
    dim bodytext as string

    foglio1.select

    ' rr contiene il numero di utenti cui inviare le e-mail (1 per utente)
    rr = range("b" & rows.count).end(xlup).row

    ' i dati iniziano dalla seconda riga
    for i = 6 to rr
    set outapp = createobject("outlook.application")
    set outmail = outapp.createitem(0)
    with outmail

    ' la colonna "b" contiene gli indirizzi e-mail dei vari destinatari
    .to = cells(i, 10)

    ' la colonna "c" contiene l'indirizzo e-mail in "copia per conoscenza"
    .cc = cells(i, 11)

    ' la colonna "d" contiene l'oggetto della e-mail
    .subject = cells(i, 4)

    ' la colonna "e" contiene l testo della e-mail
    .body = cells(i, 5)

    .display
    end with
    set outmail = nothing
    set outapp = nothing
    application.sendkeys "%a"
    next i
    end sub





  • di Ricky53 (utente non iscritto) data: 22/09/2010

    Ciao marco,
    sei sicuro di averla fatta tu questa e-mail. ???

    se così fosse saresti dovuto essere in grado di scrivere le istruzioni tipo if cells(i, j) <> “” then …. che controllano che la cella del destinatario della e-mail sia vuota.

    avresti dovuto scrivere che hai ricevuto questo e-mail da un utente di un altro forum,
    che tu hai fatto qualche modifica
    ed adesso vuoi fare una personalizzazione per specifiche tue esigenze.

    penso che tu sappia che sono "io" l'autore del codice di cui tu ti sei dichiarato autore ...

    comunque il controllo è del tipo

    if cella i-esima uguale a "vuoto" oppure cella con "x" (vuol dire e-mail già inviata) salta riga e non inviare e-mail

    traducilo in codice, forza non è difficile.

    ciao da ricky53