Jump to content
Jose BN

ANSWERED Quitar notificacion de envio outlook

Recommended Posts

Hola! Amigos,

Actualmente tengo un excel con un macro que encontré en internet para el envio de correo de una hoja de excel, pero el Outlook, versIón 2016 me muestra una moesto mensaje: "Un programa está intentando enviar correo en su nombre" revisando en la web he intentado lo siguiente sin éxito:

Puede cambiar la configuración seleccionando Herramientas | Opciones | Otros | Opciones avanzadas y marcando la casilla Permitir script en carpetas compartidas. Verá que también hay una opción para Permitir script en carpetas públicas. En Outlook 2007, estas configuraciones están en Herramientas | Cuadro de diálogo Centro de confianza, bajo Seguridad de correo electrónico

El autor de la macreo es Dante en todoexpertos:

   Application.DisplayAlerts = False
    '
    'Se estable cuál hoja se va a guardar en PDF
    Set h2 = Sheets("Extras")
    '
    'Ruta donde se va a guardar el archivo PDF,
    'en la misma carpeta donde tienes el archivo con la macro
    wpath = ThisWorkbook.Path & "\"
    '
    'el nombre del archivo será el mismo que tiene hoja
    nombre = h2.Name
    '
    'Se genera el archivo PDF
    h2.ExportAsFixedFormat Type:=xlTypePDF, _
        Filename:=wpath & nombre & ".pdf", _
        Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, _
        OpenAfterPublish:=False
    '
    'Se envía el archivo por outlook
    Set dam = CreateObject("outlook.application").createitem(0)
    dam.to = Hoja11.Range("B5").Value                   'Destinatario
    dam.body = "Estimado usuario adjunto encontrará el detalle del registro de horas extras reportadas, este correo es generado en forma automática se le ruega no responder."
    dam.Subject = "Notificación Automática " & " " & Range("j4") '"Asunto"
    dam.Attachments.Add wpath & nombre & ".pdf"
    dam.Send

Agradezco me puedan ayudar para quitar este molesto mensaje:

Mis disculpas si el tema no va en la categoría.

Sin título.jpg

Share this post


Link to post
Share on other sites
Hace 13 horas, Héctor Miguel dijo:

op1) desde outlook > opciones > centro de confianza > configuración del centro de confianza > acceso mediante programación > (opción) "no avisar nunca ..."

(probablemente debas coordinar con tu aplicación anti-virus ?)

op2) busca las opciones para enviar correos por CDO

saludos,
hector.

Héctor muchas gracias por la pronta respuesta, te comento que la opción 1 la he intentado, pero no me funcionó. la PC cuenta con office 365-2016.

Intentando seguir los pasos de la opción 2 me salta el siguiente error (ver fichero).

Te agradezco la ayuda, si me puedes orientar a resolver mi problema.

Saludos

J

Nuevo Archivo WinRAR.rar

Share this post


Link to post
Share on other sites
Hace 1 hora, Héctor Miguel dijo:

lo siento, las imágenes son ilegibles y al ampliar no se ven claras :(

hay un libro con 8 ejemplos de uso de CDO que puedes descargar en la misma página sugerida:
Download workbook with more examples

Héctor me descargué los ejemplos que amablemente me ha adjuntado, pero me salta error en la linea:" .Send" tendrás una idea como solucionarlo?

Saludos

 

 

2Sin título.jpg

Share this post


Link to post
Share on other sites

Héctor he estado intentando utilizar esta macro:

Pero esta me muestra el error adjunto, se le puede llegar a la solución?

Set myMail=CreateObject("CDO.Message")
myMail.Subject="Sending email with CDO"
myMail.From="mymail@mydomain.com"
myMail.To="someone@somedomain.com"
myMail.TextBody="This is a message."
myMail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/sendusing")=2
'Name or IP of remote SMTP server
myMail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserver") _
="smtp.server.com"
'Server port
myMail.Configuration.Fields.Item _
("http://schemas.microsoft.com/cdo/configuration/smtpserverport") _
=25 
myMail.Configuration.Fields.Update
myMail.Send
set myMail=nothing

 

33a.jpg

Share this post


Link to post
Share on other sites
Hace 1 hora, Jose BN dijo:

me muestra el error adjunto, se le puede llegar a la solución?

de que los ejemplos funcionan... te lo puedo asegurar (pero...)

asegúrate de leer (y entender) los comentarios en la sección de "Read this!!!"

un error del tipo "-2147xxx..." significa que se intenta utilizar (o llamar a) un objeto que no esta presente (o no inicializado)

observa que hay una líneas "comentadas" (precedidas de apóstrofo) que configuran ciertos servidores
y debes indicar cual es el servidor "smtp" (Simple Mail Tranfer Protocol) que utiliza tu equipo y conexión a internet (lo que exhibes como: ="smtp.server.com") y que debe coincidir con el servidor de la cuenta que pretendes utilizar (hotmail ?, gmail ?, yahoo ?, otro ?)

saludos,
hector.

Share this post


Link to post
Share on other sites
Hace 10 minutos , Héctor Miguel dijo:

de que los ejemplos funcionan... te lo puedo asegurar

las lineas 'comentadas' son por si... hiciera falta 'configurar' el CDO [a falta de configuración en OE, WLM, etc.]
es decir... si te falla la primera vez... elimina los comentarios [TODOS los apóstrofos al inicio de cada línea]

si cualquier duda... comentas ?
saludos,
hector.

=== en un modulo de código normal ===

Private Sub enviar_Archivos_CDO()
  Dim configura As Object, campos
  Application.ScreenUpdating = False
  Set configura = CreateObject("cdo.configuration")
'  configura.Load -1 ' restablece la configuracion por omision '
'  Set campos = configura.Fields
'  With campos
'    .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
'    .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "aqui.tu.ISP.REAL"
'    .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
'    .Update
'  End With
  With CreateObject("cdo.message")
    Set .Configuration = configura
    .To = "cuenta_1@dominio.1"
    .CC = "cuenta_2@dominio.2"
    .BCC = "cuenta_3@dominio.3"
    .From = """Alguien"" <tu_cuenta@y.dominios.REALES>"
    .Subject = "Este es el asunto..."
    .TextBody = "Este es el cuerpo del mensaje"
    .AddAttachment "C:\Ruta y\sub-Carpetas al\Archivo.XYZ"
    .Send
  End With
  Set configura = Nothing
'  Set campos = Nothing
End Sub

 

Share this post


Link to post
Share on other sites
Hace 19 horas, Héctor Miguel dijo:

las lineas 'comentadas' son por si... hiciera falta 'configurar' el CDO [a falta de configuración en OE, WLM, etc.]
es decir... si te falla la primera vez... elimina los comentarios [TODOS los apóstrofos al inicio de cada línea]

si cualquier duda... comentas ?
saludos,
hector.

=== en un modulo de código normal ===


Private Sub enviar_Archivos_CDO()
  Dim configura As Object, campos
  Application.ScreenUpdating = False
  Set configura = CreateObject("cdo.configuration")
'  configura.Load -1 ' restablece la configuracion por omision '
'  Set campos = configura.Fields
'  With campos
'    .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
'    .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "aqui.tu.ISP.REAL"
'    .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
'    .Update
'  End With
  With CreateObject("cdo.message")
    Set .Configuration = configura
    .To = "cuenta_1@dominio.1"
    .CC = "cuenta_2@dominio.2"
    .BCC = "cuenta_3@dominio.3"
    .From = """Alguien"" <tu_cuenta@y.dominios.REALES>"
    .Subject = "Este es el asunto..."
    .TextBody = "Este es el cuerpo del mensaje"
    .AddAttachment "C:\Ruta y\sub-Carpetas al\Archivo.XYZ"
    .Send
  End With
  Set configura = Nothing
'  Set campos = Nothing
End Sub

 

Héctor ha valido la perseverancia y la buena vocación para orientar de tu parte.

Mi error, radicaba en smtp.server.com como lo expresas: un error del tipo "-2147xxx..." significa que se intenta utilizar (o llamar a) un objeto que no esta presente (o no inicializado). Lo cual he corregido y comprobado que los métodos funcionan como lo garantizaste.

Muchas gracias!

J

"Tema concluido"

 

Share this post


Link to post
Share on other sites

Héctor podría abusarme si me indicarás como podría convertir la hoja de excel a pdf para adjuntarle en el envio del correo, ya que observo que este método, no me funcionará:

 

Set h2 = Sheets("Hoja1")
wpath = ThisWorkbook.Path & "\"
 nombre = h2.Name
h2.ExportAsFixedFormat Type:=xlTypePDF, _
        Filename:=wpath & nombre & ".pdf", _
        Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, _
        OpenAfterPublish:=False
Set dam = CreateObject("outlook.application").createitem(0)

 

J

Share this post


Link to post
Share on other sites

1) deja esta parte de tu código (quizá el principio del que usas para el envío de correo)

Hace 19 minutos , Jose BN dijo:

Set h2 = Sheets("Hoja1")
wpath = ThisWorkbook.Path & "\"
 nombre = h2.Name
h2.ExportAsFixedFormat Type:=xlTypePDF, _
        Filename:=wpath & nombre & ".pdf", _
        Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, _
        OpenAfterPublish:=False

2) la propuesta para el envío ya lleva una linea para adjuntos:

Hace 3 horas, Jose BN dijo:

.AddAttachment "C:\Ruta y\sub-Carpetas al\Archivo.XYZ"

solo necesitas indicar la misma ruta y nombre con que guardas el .pdf

saludos,
hector.

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.

×
×
  • Create New...

Important Information

Privacy Policy

Ayuda Excel - Madrid, Madrid, ES - Valorada por 6254 personas - Aprender Excel - Total: 4.7 / 5