Acquista i nostri libri consigliati su Amazon.it
+ Rispondi al messaggio
Visualizzazione dei risultati da 1 a 5 su 5

Macro in Vba per inviare via mail il contenuto di celle

  1. #1
    ragnus non è in linea Novello
    Post
    1
    Like Inviati  
    0
    Like Ricevuti  
    0
    Ho un elenco di nominativi in colonna A ed in colonna B ho lo stato di insolvenza degli stessi, in colonna C ho la possibilità di inserire un nuovo stato di insolvenza (qualora ci fosse un aggiornamento del precedente in colonna B).
    La mia Macro dovrebbe verificare riga per riga cio' che è modificato ed inviare una mail ad un unico indirizzo avente come corpo messaggio il solo contenuto di quanto è presente nella colonna C alla riga dove è avvenuta una variazione.

    Quello che non so fare, e per cui vi chiedo aiuto, è il codice per inviare le suddette mail.

    Grazie per ogni aiuto.

  2. #2
    L'avatar di Elimar
    Elimar non è in linea Scribacchino
    Post
    693
    Like Inviati  
    0
    Like Ricevuti  
    0
    Ciao ragnus

    questo è il codice che ho usato.
    Option Explicit 'Richiede che le variabili siano dichiatare prima di essere usate.

    'La verifica sotto riportata prevede che la colonna C venga
    'alimentata solo in caso di variazione.

    Sub verifica_Variazioni()
    Dim Ctrl As Boolean 'creo un controllo per sapere se ci sono stati cambiamenti
    'nella colonna C o meno
    Dim Mail As String 'Variabile per corpo della mail
    Dim REF As String 'Variabile per Oggetto della mail

    'seleziono la prima cella che contiene dati
    Range("A2").Select
    'fino che la cella attiva non è vuota
    Do While ActiveCell <> Empty
    'verifico se nella colonna C almeno una cella è stata valorizzata
    If ActiveCell.Offset(0, 2) <> Empty Then
    'se è stata valorizzata, assegno alla variabile valore Vero
    Ctrl = True
    'ed esco dal DO non avendo più bisogno di verificare ulteriormente
    Exit Do
    Else
    'altrimenti scendo di una riga
    ActiveCell.Offset(1, 0).Select
    End If
    'e ricomincio la mia verifica.
    Loop

    'se la variabile è stata alimentata
    If Ctrl = True Then
    '** Creo le variabili per Outlook
    Dim ObjOutlook As New Outlook.Application
    Dim ObjEMail As Outlook.MailItem
    'seleziono la prima cella che contiene dati
    Range("a2").Select
    'fino che la cella che analizzo non è vuota
    Do While ActiveCell <> Empty
    'verifico se la colonna C è valorizzata ed allora scrivo il nome e lo stato di insolvenza
    If ActiveCell.Offset(0, 2) <> Empty Then Mail = Mail & ActiveCell & " " & ActiveCell.Offset(0, 2) & vbNewLine
    'seleziono la riga successiva
    ActiveCell.Offset(1, 0).Select
    'rifaccio il controllo
    Loop
    'metto l'oggetto della mail
    REF = "Urgente: - Segnalazione variazioni sullo stato di insolvenza"

    Set ObjOutlook = CreateObject("Outlook.application")
    Set ObjEMail = ObjOutlook.CreateItem(olMailItem)


    With ObjEMail
    .To = inserire il destinatario della mial
    '.CC = "inserire l'eventuale indirizzo di chi si vuole mettere in cc"
    '.Importance = olImportanceHigh
    .Subject = REF
    .Body = Mail
    .OriginatorDeliveryReportRequested = True
    .ReadReceiptRequested = True
    .Send

    End With
    End If

    End Sub



    Fammi sapere se va bene o se non ho capito cosa avevi bisogno.

    Sperando di esserti stato di aiuto.

    ciao
    ℹ️ Leggi di più su Elimar ...

  3. #3
    L'avatar di Tommy_G
    Tommy_G non è in linea Scribacchino
    Post
    1,011
    Like Inviati  
    0
    Like Ricevuti  
    0
    da neofita qual sono io farei così:

    X_Ragnus.zip - Dedicated Web Hosting Service

    chissà che magari possa andare bene anche a te

    p.s.
    controlla che la query abbia i parametri che occorrono a te perchè nell'esempio ho impostato che deve estrarre i record in cui i dati di "C" sono uguali a "B"

    ciao

  4. #4
    L'avatar di Elimar
    Elimar non è in linea Scribacchino
    Post
    693
    Like Inviati  
    0
    Like Ricevuti  
    0
    Ho sviluppato il codice in excel, in quanto dal titolo del post veniva chiesto come inviare il contenuto delle celle ...
    Cmq adesso hai la possibilità di sceglere che applicazione utilizzare.
    ℹ️ Leggi di più su Elimar ...

  5. #5
    L'avatar di Tommy_G
    Tommy_G non è in linea Scribacchino
    Post
    1,011
    Like Inviati  
    0
    Like Ricevuti  
    0
    Quote Originariamente inviato da MILANO_VIPERS Visualizza il messaggio
    Ho sviluppato il codice in excel, in quanto dal titolo del post veniva chiesto come inviare il contenuto delle celle ...
    Cmq adesso hai la possibilità di sceglere che applicazione utilizzare.
    accidenti è vero!!! ...che rimbambito che sono
    scusate ma dato la non più verde età perspicacia e discernimento sono ormai un retaggio d'altri tempi

+ Rispondi al messaggio

Potrebbero interessarti anche ...

  1. Risposte: 4
    Ultimo Post: 09-11-2016, 11:29
  2. Inviare mail via VBA
    Da Jocman nel forum Microsoft Access
    Risposte: 5
    Ultimo Post: 13-06-2016, 11:15
  3. Risposte: 3
    Ultimo Post: 06-04-2014, 01:44
  4. [Excel]cancellare il contenuto delle celle sbloccate con 1 macro
    Da blackjack71 nel forum Microsoft Excel
    Risposte: 3
    Ultimo Post: 22-08-2008, 22:45
  5. inviare mail
    Da massimo74rn nel forum ASP 3, ASP .Net
    Risposte: 1
    Ultimo Post: 24-07-2008, 20:38