Sviluppare funzionalita su Microsoft Office con VBA generare PDF ed allegarlo ad email da inviare tramite gmail (senza MS Outlook)

Login Registrati
Stai vedendo 14 articoli - dal 1 a 14 (di 14 totali)
  • Autore
    Articoli
  • #25470 Score: 0 | Risposta

    Buongiorno a tutti, tempo fa, col vostro prezioso aiuto, mi avete permesso di risolvere un grosso problema con l'invio di email con pdf allegati.

    Vorrei disturbarvi ancora perchè oggi la questione è più complicata....

    Mi servirebbe fare la stessa cosa ma senza usare Outlook.  Mi servirebbe genereare una mail che possa inviare un allegato pdf tramite gmail. Ho trovato una pagina che tratta l'argomento (c'è anche un file di esempio) ma non ci ho capito molto....

    Eccola https://www.rondebruin.nl/win/s1/cdo.htm

    Io dovrei "solo" inviare il Foglio2 di una cartella excel, dopo che è stato convertito in pdf, salvato in una sottocartella di quella principale, ad un indirizzo email specificato all'interno dello stesso Foglio2 .

    Secondo voi è possibile?

    Grazie a chi vorrà aiutarmi

    Luca

     

    #25605 Score: 0 | Risposta

    Buongiorno, nessuno può darmi una mano?   

    #25606 Score: 1 | Risposta

    patel
    Moderatore
      51 pts

      cos'è che non sai fare ? generare il pdf ? allegarlo alla mail ? dove sono i tuoi tentativi di risolvere ?

      #25666 Score: 0 | Risposta
      Sub creaf_pdf_proforma()
      
      Dim AppMail As Object 'Outlook.Application
      Dim NewMail As Object 'Outlook.Application
      Dim miaDir
      Dim MioWBK As Workbook
      Dim MioSheet As Worksheet
      Dim MailTo As Worksheet
      Dim Nome1 As String
      Dim Nome2 As String
      Dim Nome3 As String
      Dim Nome4 As String
      Dim Nome5 As String
      Dim Nome6 As String
      
      Dim Cognome As String
      Dim indirizziTO As String
      Dim IndirizziCC As String
      Dim NomeFile As String
      Dim Oggetto As String
      Dim Testo As String
      Dim HTMLBody As String
      
      Set MioWBK = ActiveWorkbook
      Set MioSheet = ActiveWorkbook.Sheets("Pro_FORMA")
      miaDir = MioWBK.Path
      
      Nome1 = MioSheet.Range("e22")
      
      
      NomeFile = Nome1 & "_" & " .pdf"
      
          Sheets("Entrate_Pro_FORMA").Select
      
      ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
              miaDir & "/00-pdf_Fatture/" & NomeFile, Quality:= _
              xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
              OpenAfterPublish:=False
      
          Sheets("Entrate_Pro_FORMA").Select
      
      End Sub
      
      #25667 Score: 0 | Risposta

      questo crea il file pdf ma ora rimane il problema di allegarlo ad una mail gmail (nel browser) senza usare Outlook.

      ho provato a modificare i files della guida https://www.rondebruin.nl/win/s1/cdo.htm ma non vanno...

      #25737 Score: 0 | Risposta

      Ciao Patel, io purtroppo ho fatto solo quello che vedi qui sopra....

      Mi aiuteresti a generare la mail in gmail? 

      Grazie tante

      #25742 Score: 0 | Risposta

      patel
      Moderatore
        51 pts

        prova questa

        Sub MailConAllegato()
            Set cdomsg = CreateObject("CDO.message")
            MittenteMail = "pippo@gmail.com"
            OggettoMail = "oggetto"
            With cdomsg.Configuration.Fields
                .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 'NTLM method
                .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.gmail.com"
                .Item("http://schemas.microsoft.com/cdo/configuration/smptserverport") = 465
            
                .Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
                .Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
                .Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
                .Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = MittenteMail
                .Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "password"   'password accesso
                .Update
            End With
            DestinatarioMail = "destinatario"
            With cdomsg
                .To = DestinatarioMail
                .CC = ""
                .BCC = ""
                .From = MittenteMail
                .Subject = OggettoMail
                .TextBody = "Testo della mail"
                If .Attachments.Count <> 0 Then .Attachments.DeleteAll
                .AddAttachment "percorso del file"
                .Send
            End With
           
        End Sub
        #25744 Score: 0 | Risposta

        Nulla di fatto, purtroppo non va.

        Riporta un errore SMTP ed il debug di excel evidenzial il comando ".Send"

        #25751 Score: 0 | Risposta

        patel
        Moderatore
          51 pts

          non basta dire non va, devi mostrare il codice che hai usato

          #25757 Score: 0 | Risposta

          Ho usato il codice che hai postato mettendo indirizzo email e password. Non vale la pena postarlo 🙂

          Da errore smtp. A te funziona? Ho provato anche a tenere il browser aperto con la casella Gmail anch'essa aperta ma non va

          #25761 Score: 0 | Risposta

          patel
          Moderatore
            51 pts

            Il codice che ho postato funzionava in passato, ora l'ho riprovato e da errore smtp, se risolvo ti avviso.

            #25796 Score: 0 | Risposta

            patel
            Moderatore
              51 pts

              Abilita "consenti app meno sicure" (vedi https://myaccount.google.com/lesssecureapps?pli=1) e vedrai che funziona

              #25802 Score: 0 | Risposta

              Alla grande. Funziona benissimo!

              C'è solo un piccolo problema....invia direttamente l'email senza farmela visualizzare. E possibile crearla solamente senza procedere con l'invio diretto? Anzichè usare il comando .send,  ho provato con .Display ma mi sa che è valido solo per outlook.

              Ti ringrazio

              #25824 Score: 0 | Risposta

              patel
              Moderatore
                51 pts

                Puoi soltanto spedire.

              Login Registrati
              Stai vedendo 14 articoli - dal 1 a 14 (di 14 totali)
              Rispondi a: generare PDF ed allegarlo ad email da inviare tramite gmail (senza MS Outlook)
              Gli allegati sono permessi solo ad utenti REGISTRATI
              Le tue informazioni: