¿Cómo soluciono el error 2295 de access 2016 y outlook?
Tengo un botón en access 2016 para mandar un mail masivo a muchos destinatarios, cada uno con su informe. Antes funcionaba, pero ahora al abrir outlook, me dice que ha encontrado destinatarios desconocidos y no envía el mensaje.
¿Alguien me puede ayudar a solucionarlo?
1 Respuesta
Me parece que ese error se da cuando efectivamente hay alguna dirección errada. Quizá sí, de forma casual, tú o alguien cambiaron alguna y por eso el error. Comentas.
Abraham Valencia
Hola Abraham,
Muchas gracias por tu respuesta.
Tengo más de 500 direcciones, ¿Cómo puedo comprobar cual no es la correcta?
Un saludo,
Winsuesue
Tienes una línea de este tipo:
DoCmd.SendObject acSendNoObject...
De ser no la respuesta ¿es posible ver tu código completo?
Hola Abraham,
Lo he copiado de la web de Búho, y he modificado lo que necesitaba para crear el bucle y que se mande un archivo diferente a cada alumno dependiendo de su idAlumno
He revisado las direcciones de email y corregido tres, pero aunque ponga únicamente la mía, en todos los registros sigue dando ese error.
Un millón de gracias por tu ayuda.
Aquí te pongo el código.
Private Sub Opción9_Click()
On Error GoTo sol_err
'Declaración de variables
Dim mailA As Variant
Dim elAsunto As String
Dim elMsg As String
'Inicializamos las variables
'Pedimos al usuario que especifique el asunto
elAsunto = InputBox("Indique el asunto", "ASUNTO")
'Detectamos si se ha pulsado el botón CANCELAR
If StrPtr(elAsunto) = 0 Then GoTo Salida
'Pedimos al usuario que especifique el cuerpo del mensaje
elMsg = InputBox("Indique el cuerpo del mensaje", "CUERPO")
'Detectamos si se ha pulsado el botón CANCELAR
If StrPtr(elMsg) = 0 Then GoTo Salida
'Si no se especifica nada los valores se convierten a cadena de texto vacía
If IsNull(elAsunto) Then elAsunto = ""
If IsNull(elMsg) Then elMsg = ""
'Creamos el informe de la carta , lo guardamos como pdf y lo enviamos
Dim db As DAO.Database
Dim rst As DAO.Recordset
Dim sqlStr As String
'sqlStr = "mysqlUsuariosAlumnosEmail"
sqlStr = "SELECT* FROM [DatosAlumno] WHERE [FechaBaja] is null AND [EmailPrueba] is not null "
Set db = CurrentDb()
Set rst = db.OpenRecordset(sqlStr)
If rst.RecordCount = 0 Then
MsgBox "No existen registros en la consulta"
GoTo Salida
End If
rst.MoveFirst
'Iniciamos el proceso
Do While Not rst.EOF
DoCmd.OpenReport "Inf_CartaUsuario", acViewPreview, , "DatosAlumno.idalumno= " & rst("IdAlumno") 'en este informe hay que cambiar año 2017/2018 por actual
Dim nomfichero As String
Dim archivo As String
Dim ruta As String
Dim miInforme As String
ruta = Application.CurrentProject.Path & "\Carta Usuario\" 'Ruta del directorio donde quiero los pdfs, acabada en la contrabarra (\)
miInforme = ruta & "Informe.pdf"
nomfichero = "A-" & rst("IdAlumno") & "-" & rst("NombreAlumno") & " " & rst("Apellido1") & " " & rst("Apellido2") ' es un campo unico
archivo = ruta & nomfichero
'Cogemos el mail del destinatario. Hay que cambiar EmailPrueba por Email
mailA = rst.Fields("EmailPrueba").Value
'Se envía el correo
DoCmd.SendObject acSendReport, "Inf_CartaUsuario", acFormatPDF, archivo & ".pdf", mailA, , , Asunto, Cuerpo, 0
DoCmd.Close acReport, "Inf_CartaUsuario"
'Nos movemos al siguiente registro
rst.MoveNext
Loop
'Avisamos de que el envío ha ido bien
MsgBox "Mensaje masivo enviado con éxito", vbInformation, "CORRECTO"
'Eliminamos el informe de nuestra carpeta
Kill miInforme
Salida:
Exit Sub
sol_err:
MsgBox Err.Number & ": " & Err.Description
Resume Salida
End Sub
Esta línea:
DoCmd. SendObject acSendReport, "Inf_CartaUsuario", acFormatPDF, archivo & ".pdf", mailA,,, Asunto, Cuerpo, 0
Ese último cero (0) cámbialo por un uno (1) o por la palabra "True". Se supone que con ese cambio te dará/mostrará un cuadro en el cual se pueden corregir/ver los correos. Lo que sí me extraña es eso que comentas que aún colocando solo tu correo te da el mismo error, pero bueno, intenta el cambio que te comento y vamos viendo.
Abraham Valencia
Hola Abraham,
he cambiado, primero a 1 y luego a True, y ni siquiera abre Outlook. No me da opción. Se genera el primer informe con los datos y aparece el mensaje de error 2295... destinatarios desconocidos
Gracias!!
Un intento más:
- Tus direcciones de correo ¿están separadas por "punto y coma" o por "coma"? ¿Existe la posibilidad de qué estés usando la incorrecta? ¿Existe la posibilidad que se te hayan mezclado ambas? Además, no olvides que quizá en la PC del error antes funcionaba bien pero alguien puede haber cambiado el "separador de listas" de la "configuración regional.
Abraham Valencia
Hola Abraham,
en teoría se envía el informe de uno en uno. Primero se genera, se guarda, se envía y se cierra. luego se vuelve a abrir para el siguiente alumno, con lo que no hay lista ni separadores.
Esto mismo me funciona perfecto con Gmail pero lo tengo que utilizar con outlook
Muchas gracias,
Winsue
¿Es posible enviar el archivo, al menos con parte de los datos, para probar en mi PC? La verdad es que me ha dado mucha curiosidad ver, en "directo", que es lo que ocurre.
Me avisas
Abraham Valencia
Uff, lo siento Abraham, pero por la protección de datos no puedo enviártelo.
Si es imprescindible te creo otro...
Por supuesto que te entiendo. Creo que es una buena alternativa lo que recomiendas, crear otro, de paso que pruebas si te da el mismo error. Si ocurre eso, seguimos intentando, es sábado, yo tengo tiempo jejeje.
Abraham Valencia
- Compartir respuesta