E-mail Automatica da Excel in base al Valore della cella

Anonimo
2023-10-22T07:34:12+00:00

Buongiorno

È possibile creare una Macro di invio automatico di e-mail, da applicare a singole celle?

Celle che si aggiornano automaticamente con formula.

Quindi al raggiungento del valore X (che imposterò io in base a necessità) della cella L3, invia una mail ad una lista di persone.

Se possibile, che si possa cambiargli l’oggetto della mail e il testo della mail, in modo da personalizzarla.

Grazie a tutti

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

Anonimo
2023-10-22T08:19:56+00:00

Ciao Mattia B, Sono Femi e sarei felice di aiutarti con la tua domanda. Sì, è possibile creare una macro di posta elettronica automatica in Excel che può essere applicata alle singole celle, attivando un'e-mail quando viene soddisfatta una determinata condizione. A tale scopo, è possibile utilizzare Excel VBA (Visual Basic, Applications Edition), che consente di automatizzare le attività in Excel, incluso l'invio di messaggi di posta elettronica. Di seguito è riportato uno schema di base di come creare una macro di questo tipo: Apri Excel e premi ALT + F11 per aprire l'editor VBA. Inserisci un nuovo modulo facendo clic su "Inserisci" > "Modulo". Copia e incolla il seguente codice VBA nel modulo: Sub SendEmailWhenValueReached() Oscura e-mail come oggetto Impostare Email = CreateObject("Outlook.Application"). CreateItem(0)

Oscura destinatari come stringa Dim XValue Come Doppio Dim TargetRange As Range

' Definisci l'oggetto e il corpo dell'e-mail Email.Subject = "L'oggetto della tua email" Email.Body = "Il testo del corpo dell'email"

' Definire i destinatari delle e-mail (separati da punto e virgola) Destinatari = "******************; ******************"

' Impostare l'intervallo target e il valore X Imposta TargetRange = ThisWorkbook.Sheets("Foglio1"). Intervallo ("L3") XValue = 10 ' Imposta il valore X desiderato

' Controlla se il valore della cella ha raggiunto il valore X Se TargetRange.Value >= XValue allora ' Aggiungi destinatari Email.To = Destinatari ' Invia l'e-mail E-mail.Invia Fine se Fine sottomarino

Modificare il codice in base alle proprie esigenze. È possibile modificare l'oggetto, il corpo, i destinatari e il valore X dell'e-mail in base alle proprie esigenze specifiche. Chiudi l'editor VBA. A questo punto, è necessario impostare un evento per attivare la macro. È possibile utilizzare un evento di modifica del foglio di lavoro di Excel per monitorare le modifiche nella cella L3. Nell'editor VBA, fai doppio clic sul foglio in cui desideri applicare questa macro (ad esempio, "Foglio1") e incolla il seguente codice: Sub privato Worksheet_Change(ByVal Target come intervallo) Se Target.Address = "$L$3" allora SendEmailWhenValueReached (InviaEmailQuandoValore) Fine se Fine sottomarino

Salvare il file di Excel con un'estensione abilitata per le macro, ad esempio ".xlsm". Ora, quando il valore nella cella L3 del foglio specificato raggiunge o supera il valore X impostato, la macro si attiverà e invierà l'e-mail ai destinatari con l'oggetto e il corpo specificati.

Tieni presente che affinché funzioni, devi avere Microsoft Outlook installato e configurato sul tuo computer, poiché questo codice utilizza Outlook per inviare e-mail.

Migliori saluti Femi

Questa risposta è stata tradotta automaticamente. Di conseguenza, potrebbero esserci errori grammaticali o espressioni strane.

La risposta è stata utile?

3 persone hanno trovato utile questa risposta.
0 commenti Nessun commento

Risposta accettata dall'autore della domanda

Anonimo
2023-10-22T18:19:56+00:00

L'"Errore di runtime 424: Oggetto richiesto" si verifica in genere quando si verifica un problema con i riferimenti agli oggetti nel codice VBA. Nel tuo caso, potrebbe essere correlato al modo in cui stai configurando l'oggetto di posta elettronica usando CreateObject("Outlook.Application"). Questo errore può verificarsi se Outlook non è installato e configurato correttamente nel sistema. Per risolvere questo problema, assicurarsi di aver installato e configurato Outlook come client di posta elettronica predefinito.

Questa risposta è stata tradotta automaticamente. Di conseguenza, potrebbero esserci errori grammaticali o espressioni strane.

La risposta è stata utile?

2 persone hanno trovato utile questa risposta.
0 commenti Nessun commento

3 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2023-10-24T19:12:51+00:00

    Buonasera.

    Risolto tutto.

    Volevo sapere ora, se possibile, se questo codice è applicabile a più celle di un determinato foglio.

    In modo da personalizzargli il testo ed oggetto dell'email.

    Dovrei applicarlo a circa 2/3 fogli e su più celle di ognuno di essi.

    Inoltre ho dimenticato di dire che dovrebbe inviare una volta soltanto la mail. Perché se giornalmente varia il dato, lui manda continuamente mail.

    Sto complicando troppo?

    Grazie ancora per la pazienza

    La risposta è stata utile?

    1 persona ha trovato utile questa risposta.
    0 commenti Nessun commento
  2. Eliminata

    Questa risposta è stata eliminata a causa di una violazione del codice di comportamento. La risposta è stata segnalata manualmente o identificata tramite il rilevamento automatizzato prima dell'esecuzione dell'azione. Per ulteriori informazioni, fai riferimento al codice di comportamento.


    I commenti sono stati disattivati. Ulteriori informazioni

  3. Anonimo
    2023-10-22T18:14:49+00:00

    Ciao Mattia B, Sono Femi e sarei felice di aiutarti con la tua domanda. Sì, è possibile creare una macro di posta elettronica automatica in Excel che può essere applicata alle singole celle, attivando un'e-mail quando viene soddisfatta una determinata condizione. A tale scopo, è possibile utilizzare Excel VBA (Visual Basic, Applications Edition), che consente di automatizzare le attività in Excel, incluso l'invio di messaggi di posta elettronica. Di seguito è riportato uno schema di base di come creare una macro di questo tipo: Apri Excel e premi ALT + F11 per aprire l'editor VBA. Inserisci un nuovo modulo facendo clic su "Inserisci" > "Modulo". Copia e incolla il seguente codice VBA nel modulo: Sub SendEmailWhenValueReached() Oscura e-mail come oggetto Impostare Email = CreateObject("Outlook.Application"). CreateItem(0) Oscura destinatari come stringa Dim XValue Come Doppio Dim TargetRange As Range ' Definisci l'oggetto e il corpo dell'e-mail Email.Subject = "L'oggetto della tua email" Email.Body = "Il testo del corpo dell'email" ' Definire i destinatari delle e-mail (separati da punto e virgola) Destinatari = "******************; ******************" ' Impostare l'intervallo target e il valore X Imposta TargetRange = ThisWorkbook.Sheets("Foglio1"). Intervallo ("L3") XValue = 10 ' Imposta il valore X desiderato ' Controlla se il valore della cella ha raggiunto il valore X Se TargetRange.Value >= XValue allora ' Aggiungi destinatari Email.To = Destinatari ' Invia l'e-mail E-mail.Invia Fine se Fine sottomarino Modificare il codice in base alle proprie esigenze. È possibile modificare l'oggetto, il corpo, i destinatari e il valore X dell'e-mail in base alle proprie esigenze specifiche. Chiudi l'editor VBA. A questo punto, è necessario impostare un evento per attivare la macro. È possibile utilizzare un evento di modifica del foglio di lavoro di Excel per monitorare le modifiche nella cella L3. Nell'editor VBA, fai doppio clic sul foglio in cui desideri applicare questa macro (ad esempio, "Foglio1") e incolla il seguente codice: Sub privato Worksheet_Change(ByVal Target come intervallo) Se Target.Address = "$L$3" allora SendEmailWhenValueReached (InviaEmailQuandoValore) Fine se Fine sottomarino Salvare il file di Excel con un'estensione abilitata per le macro, ad esempio ".xlsm". Ora, quando il valore nella cella L3 del foglio specificato raggiunge o supera il valore X impostato, la macro si attiverà e invierà l'e-mail ai destinatari con l'oggetto e il corpo specificati. Tieni presente che affinché funzioni, devi avere Microsoft Outlook installato e configurato sul tuo computer, poiché questo codice utilizza Outlook per inviare e-mail. Migliori saluti Femi

    Questa risposta è stata tradotta automaticamente. Di conseguenza, potrebbero esserci errori grammaticali o espressioni strane.

    Buonasera

    Ho provato ad inserire il codice ma mi da questo errore se provo a farlo girare. Allego immagine

    La risposta è stata utile?

    0 commenti Nessun commento