** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - mandar correos con thunderbird desde access
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradomandar correos con thunderbird desde access

 Responder Responder
Autor
Mensaje
acilu55 Ver desplegable
Habitual
Habitual


Unido: 27/Septiembre/2011
Estado: Sin conexión
Puntos: 154
Enlace directo a este mensaje Tema: mandar correos con thunderbird desde access
    Enviado: 30/Marzo/2021 a las 19:30
tengo este códico para mandar un mail desde un formulario. 

'--------------
Set OUTAPP = CreateObject("outlook.Application")
Set OUTMAIL = OUTAPP.CreateItemFromTemplate(Application.CurrentProject.path & "\oficio.oft")

With OUTMAIL
.To = mail
.cc = ""
.bcc = ""
.BodyFormat = olFormatHTML
            
.Subject = "Verificacion de datos profesionales."
adjunto1 = Application.CurrentProject.path & "\nombre del adjunto1.pdf"
adjunto2 = Application.CurrentProject.path & "\monbre del adjunto2.pdf"

.Attachments.Add (adjunto1)
.Attachments.Add (adjunto2)


.Display
'.Send
End With
Set OUTMAIL = Nothing
Set OUTAPP = Nothing
'--------------------------------

Funciona perfectamente si el cliente tirne outlook, mi problema es que tiene Thunderbird como aplicación de correo.

¿alguien se le ocurre por donde puedo empezar para que el correo salga en Thunderbird?
Gracias de antemano



Gracias a todos de antemano
Arriba
rokoko Ver desplegable
Colaborador
Colaborador
Avatar

Unido: 16/Febrero/2008
Localización: Pamplona
Estado: Sin conexión
Puntos: 2840
Enlace directo a este mensaje Enviado: 30/Marzo/2021 a las 20:03
Yo no tengo ni idea, pero buscando algo aparece.....

https://nksvaccessolutions.com/Foro/viewtopic.php?t=1320

https://www.google.com/search?q=Thunderbird+vba+acess&oq=Thunderbird+vba+acess&aqs=chrome..69i57.6255j0j1&sourceid=chrome&ie=UTF-8
Arriba
acilu55 Ver desplegable
Habitual
Habitual


Unido: 27/Septiembre/2011
Estado: Sin conexión
Puntos: 154
Enlace directo a este mensaje Enviado: 30/Marzo/2021 a las 20:34
tienen buena pinta investigará como solucionarlo. Parece que sendobject me dara problemas ya que necesito enviar dos adjuntos, si encuentro la solucion la pondre aqui.
Gracias Rokoko.

Gracias a todos de antemano
Arriba
acilu55 Ver desplegable
Habitual
Habitual


Unido: 27/Septiembre/2011
Estado: Sin conexión
Puntos: 154
Enlace directo a este mensaje Enviado: 31/Marzo/2021 a las 13:20
Solucionado:

'----------------------------------------------------------------------------------------------------------
'-------Código programado por Neckkito @ http://neckkito.siliconproject.com.ar
'-------Fecha creación: 10/10/15
'-------Fecha última modificación: 10/10/15
'-------Requisitos: requiere tener instalado Mozilla Thunderbird, ya sea la aplicación de escritorio como
' la aplicación portable
'-------Resumen: envía un correo electrónico utilizando el cliente de correo Mozilla Thunderbird
'-------A destacar: se utiliza un cuadro de lista para seleccionar varios destinatarios
'----------------------------------------------------------------------------------------------------------
'Declaramos las variables

'--------------------------------
'modificado por J. Acilu simplificando todo aquello que se conoce de inicio es no es necesario verificar no buscar en tablas de datos
'y añadir un segundo adjunto que hemos construidoi en el inicio del procedimiento"
'-------------------------------------------------------------


Dim laRutaT As String
Dim mailA As String, mailLista As String
Dim mailCC As String
Dim mailCCO As String
Dim elAsunto As String
Dim elBody As String
Dim elAdj1 As String
Dim elAdj2 As String ' añadida para el segundo adjunto
Dim miMail As String
Dim resp As Integer
Dim itemLista As Variant
'Comprobamos si se ha informado la ruta del ejecutable de Thunderbird en la tabla
laRutaT = "C:\Program Files\Mozilla Thunderbird\Thunderbird.exe"
mailA = DLookup("[correo]", "[localidades]", "[codigo]=" & CODIGO)
elAsunto = "Notificación de visado de expediente colegial "
elBody = " Adjunto le enviamos notificación de visado  del expediente" & Forms![mantenimiento de fases]![Nº de Encargo] & "_FASE-" & Forms![mantenimiento de fases]![Nº de fase]
elAdj1 = Application.CurrentProject.path & "\NOTIFICACION EXPEDIENTE" & Forms![mantenimiento de fases]![Nº de Encargo] & "_FASE-" & Forms![mantenimiento de fases]![Nº de fase] & ".pdf"
elAdj2 = Application.CurrentProject.path & "\Respuesta EXPEDIENTE" & Forms![mantenimiento de fases]![Nº de Encargo] & "_FASE-" & Forms![mantenimiento de fases]![Nº de fase] & ".pdf"


'----------------------------------------------------------------------------------------------------------------
'***Aquí empezamos la construcción de la cadena de línea de comandos. Lo voy a hacer atomizado para que podáis
'***entender claramente su estructura
'----------------------------------------------------------------------------------------------------------------
'*1.- La ruta del ejecutable debe ir entre comillas dobles (por si en la ruta indicada hay espacios en blanco)
'**** Añadimos esas comillas dobles a través de chr(34)
miMail = Chr(34) & laRutaT & Chr(34)
'*2.- a continuación debemos añadir la palabra "thunderbird" y activar el comando "-compose". A partir de aquí
'**** todo lo que construyamos irá entre comillas dobles. Por ello añadimos las comillas dobles iniciales con
'**** chr(34). ¡Ojo con los espacios en blanco!
miMail = miMail & " thunderbird -compose " & Chr(34)
'*3.- Para indicar el destinatario utilizamos "to=", y a continuación la dirección del destinatario. Pero, esa
'**** dirección debe ir entre comillas simples
miMail = miMail & "to='" & mailA & "'"
'*4.- Para indicar el destinatario en copia utilizamos "cc=", con la dirección entre comillas simples. Así pues
'**** comprobamos si hay destinatario en copia y, si lo hay, lo incluimos. Hay que tener en cuenta que a partir
'**** de aquí debemos separar los elementos del mail con una coma (,)
If mailCC <> "" Then
miMail = miMail & ",cc='" & mailCC & "'"
End If
'*5.- Lo mismo para el destinatario con copia oculta, identificado por "bcc=".
If mailCCO <> "" Then
miMail = miMail & ",bcc='" & mailCCO & "'"
End If
'*6.- A continuación añadimos el asunto, para lo cual utilizamos "subject=". Recordad que separamos los elementos
'**** del mail con una coma (,), y que el texto debemos entrecomillarlo con comillas simples.
miMail = miMail & ",subject='" & elAsunto & "'"
'*7.- Lo mismo para el texto del mensaje, para lo cual utilizamos "body=".
If elBody <> "" Then
miMail = miMail & ",body='" & elBody & "'"
End If

'*8.- El adjunto ("attachement=") requiere un tratamiento un poco más especial, dado que a partir de la versión
'**** 2.0 the Thunderbird debemos anteponerle "file:///". Así que...
'----------------------------
'añadida por j.Acilu la coma para introducir un segundo adjunto
'---------------------------------
miMail = miMail & ",attachment='file:///" & elAdj1 & "," & "file:///" & elAdj2 & "'"

'*9.- Ahora ya podemos cerrar las comillas dobles que os comentaba y que abrimos en el punto 2
miMail = miMail & Chr(34)
'Con la siguiente línea podemos ver la cadena que nos hemos creado en la ventana inmediato '(CTRL+G)
'Debug.Print miMail

'*10.- Llamamos al shell y se nos abrirá la ventana de Thunderbird con el mail
Call Shell(miMail, vbNormalFocus)
'----------------------------
'falta establecer la plantilla de firma del mensaje que dependerá del usuario final

Gracias a todos de antemano
Arriba
acilu55 Ver desplegable
Habitual
Habitual


Unido: 27/Septiembre/2011
Estado: Sin conexión
Puntos: 154
Enlace directo a este mensaje Enviado: 03/Abril/2021 a las 19:39
Parece ser que thunderbird tiene la "mala costumbre de utilizar para los correros nuevos la última plantilla utilizada, asi qie no me vale proponerle una plantilla para los envíos ya que si el usuario quiere mandar algún correo fuera de la aplicación le saldrá por defecto la plantilla enviada y no debe de ser así.
Solución: Confeccionar un .Htlm e insertarlo en el cuerpo del mensaje.

A falta de ideas mejores podeis cerrar el hilo
Gracias a todos de antemano
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable