Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

VBA - Invio Mail

Ultimo Aggiornamento: 05/12/2019 10:02
17/11/2019 17:58

Saluti a tutti
Tanto tempo fà sapevo che LIBERO non desiderava che la posta fosse gestita da OUTLOOK. Poi è uscito W10 e forse è cambiato un "qualcosa"
Ho configurato Outlook2013, in totale ho WindowsMail, Thunderbird e Outlook.
L'altra sera ho modificato un files per inviare Mail (installando in VBA/Strumenti/ il riferimento Windows Outlook 15.0...)
Sono riuscito inviare solo la prima Mail, poi più nulla?
Da inesperto, guardo Outlook e vedo il pulsante "Offline" che è impossibile da "Attivare", mà Ricevo/Invio regolarmente altre mail.
Allego il files, nel quale Modulo1 e Modulo3 sono solo prove (senza Outlook, che non saprei come far funzionare)
Vi ringrazio anticipatamente
[Modificato da ABCDEF@Excel 18/11/2019 03:17]
Post: 5.775
Registrato il: 14/11/2004
Utente Master
Office 2019
OFFLINE
18/11/2019 08:13

Invio Mail
Ciao ma prima di attivare il riferimento funzionava?, nel caso togli il riferimento.

fai sapere, Ciao By Sal [SM=x423051]

se ti piace la soluzione sostienici con una DONAZIONE a piacere. Grazie clicca qui
18/11/2019 17:52

Alla fine ho tolto il riferimento Outlook 15.0 ed invio Mail tramite il Gestore-Posta
Obligatorio "compilare" i dati delle prime 7 righe verdi
Funzionante con libero e Gmail per inviare "la stessa "Email"
Invece per "mail" differenti a utenti differenti, si deve usare un ciclo FOR.
Il codice dovrà essere modificato (attualmente il files non è idoneo, vedo se riesco nei prossimi giorni)
Option Explicit
Sub InviaMail_Gmail_Libero()
Dim iMsg As Object, iConf As Object, Flds As Object
Dim MittenteMail As String, Password As String, smtpserver As String
Dim OggettoMail As String, MessageMail As String, DestinatarioMail As String
MittenteMail = "??????????" ' indirizzo della Vostra Mail (mail@Gestore), trà ""
Password = "??????????????" ' inserire la vostra password (del Gestore), trà ""
smtpserver = "????????????" ' tramite internet cercate i (parametri del Gestore). EX smtp.gmail.com oppure smtp.gmail.com , ... trà ""
DestinatarioMail = "??????" ' Destinatario della Mail (Destinatario@Gestore), trà ""
    Set iMsg = CreateObject("CDO.Message")
    Set iConf = CreateObject("CDO.Configuration")
    iConf.Load (-1)
    Set Flds = iConf.Fields
        With Flds
            .Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
            .Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
            .Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = MittenteMail
            .Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = Password
            .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = smtpserver
            .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
            .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465 ' nei stessi parametri del gestore, numero porta d'uscita (25 in caso di problemi)
            .Update
        End With
        OggettoMail = "PROVA-PROVA" ' Inserire soggetto della mail, trà ""
        MessageMail = "ciao, come stai?" ' Inserire Messaggio della mail, trà "" 
        DestinatarioMail = MittenteMail
        With iMsg
            .Configuration = iConf
            .To = DestinatarioMail
            .CC = "" ' qualora fosse necessario (non provato)
            .BCC = "" ' qualora fosse necessario (non provato)
            '.Attachments.Add(allegato) ' qualora fosse necessario (non provato)
            .From = MittenteMail
            .Subject = OggettoMail
            .TextBody = MessageMail
            .Send
        End With
Set iConf = Nothing
Set iMsg = Nothing
Set Flds = Nothing
End Sub
[Modificato da ABCDEF@Excel 19/11/2019 02:20]
27/11/2019 19:09

Usando il codice sopra invio mail regolarmente...
Ho provato inviare un'allegato e non funziona=errore
A dire il vero non sò come dichiarare la variabile...
e neppure come scrivere tale riga>>>'.Attachments.Add(allegato)
Ringrazio
Post: 893
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
27/11/2019 22:09

La teoria vorrebbe che vada scritta così:

.AddAttachment "C:\percorso completo del documento\Documento.pdf"

pertanto, se la variabile la valorizzi con tutto il percorso non dovresti aver problemi.
[Modificato da rollis13 27/11/2019 22:09]

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
28/11/2019 01:04

Dim Ffile as string
Ffile = "C:\percorso completto\nomefiles.xlsx"<< .
.AddAttachment Ffile
.
Grazie mille, funziona.
Sapresti darmi un'altra dritta.
Casella di testo in userform, vorrei poter "andare a capo"
Ho messo proprieta Multiline=True
Ma sia con Sub TextBox3_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) oppure
Sub TextBox4_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
mi scrive piccolissimi (quasi invisibile)???
[Modificato da ABCDEF@Excel 28/11/2019 02:47]
Post: 894
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
28/11/2019 01:53

Presumo che il doppio-apice che ti manca in fondo alla riga sia solo un errore di battitura 😁.

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
28/11/2019 02:20

Adesso se scrivo una frase e premo invio, cerca di posizionarsi sù un'altra textbox, invece se col mouse vado sotto la frase scritta posso continuare a scrivere?
[Modificato da ABCDEF@Excel 28/11/2019 02:46]
Post: 895
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
28/11/2019 08:32

Sarà stata l'ora tarda ma non capisco il contesto di quest'ultima domanda. Si stava gestendo un invio di email, cosa centra un textbox ?
Forse era il caso di aprire una nuova ed apposita discussione.
[Modificato da rollis13 28/11/2019 08:33]

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
28/11/2019 16:42

Ciao e scusa
Stò creando un file "invio multi mail" (no Outlook)
Dopo aver superato il problema dell'allegato, adesso ne invio pure tre
Mi rimane un "particolare" (strambo per me)

Garantisco che non fà nulla di male
1) Devi salvare fisicamente il file sul PC
2) Apri l'editor ed avvia "UserForm_Initialize" con F8 = tutto OK (tranne errori in VBA scritti)
3) Vorrei sapere come scrivere in TextBox4 "con testo a capo?"
Ps. Opzioni TextBox4/MultiLine = True
[Modificato da ABCDEF@Excel 28/11/2019 16:53]
Post: 896
Registrato il: 16/08/2015
Città: CORDENONS
Età: 67
Utente Senior
Excel 2016-32bit Win11
OFFLINE
28/11/2019 18:01

Se la tua versione di Excel la prevede, tra le opzioni della TextBox4 metti anche la voce: EnterKeyBehavior a True, dovrebbe bastare.

______________________________________________________________
C'è chi fa le COSE a CASO e chi fa CASO alle COSE (Ignoto)
28/11/2019 18:30

Grazie mille con opzioni (MultiLine = True, EnterKeyBehavior a True)
Funziona con Excel2013, con altri Excel non saprei???
Trà poco allego un files (v.2013)
30/11/2019 17:17

Allego un files che invia multi mail
Basta compilare le celle AA1:AA4 e poi compilare ce colonne A:H
Fatemi sapere se trovare errori
Post: 2.450
Registrato il: 06/04/2013
Utente Veteran
2010
OFFLINE
02/12/2019 11:16

ciao
se posso permettermi, manca completamente una gestione di errori...

Inoltre, nella: Private Sub CommandButton1_Click()
che senso ha:
If TextBox1 <> "" Or TextBox1 = "" Then Sheets("Mail").Cells(x, 1) = TextBox1.Value

(e seguenti)

???

saluti



Domenico
Win 10 - Excel 2016
02/12/2019 13:46

Grazie, in effetti in CommandButton1_Click() tutte le righe bisogna togliere il pezzo iniziale >>>If TextBoxY <> "" Or TextBoxY = "" Then
Invece non capisco che intendi per la gestione errori?
Se la mail e fasulla, non posso farci nulla.
Se mancano dati apre l'userform e se non li mette esce dalla procedura.
Comunque le critiche sono bene accette
Post: 2.451
Registrato il: 06/04/2013
Utente Veteran
2010
OFFLINE
02/12/2019 19:05

ciao
intendo la gestione errori del programma (non la "bontà" della mail).

In altre parole On Error GoTo .....

saluti



Domenico
Win 10 - Excel 2016
04/12/2019 22:08

Mi sapresti dire, dove esiste un "eventuale errore" nel VBA (Solo per imparare...?)
A parte riga31,,,,Grazie mille
[Modificato da ABCDEF@Excel 04/12/2019 23:15]
Post: 2.455
Registrato il: 06/04/2013
Utente Veteran
2010
OFFLINE
05/12/2019 10:02

ciao
a prescindere da tutto, è buona norma inserire una gestione degli errori, tutto qua

saluti



Domenico
Win 10 - Excel 2016
Vota:
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 00:44. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com