Jump to content

Archived

This topic is now archived and is closed to further replies.

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

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

Link to post
Share on other sites
Hace 3 horas, Jose BN dijo:

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

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

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

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

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.

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

 

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"

 

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

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.

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

INFORMACIÓN BÁSICA SOBRE PROTECCIÓN DE DATOS

Responsable: Sergio Andrés Celemín

Finalidad: Moderar y responder comentarios de usuarios. Recuerda que la información que facilites es pública, y los datos que incluyas los leerá cualquier visitante de esta web, así como el avatar que poseas.

Legitimación: Consentimiento del interesado.

Destinatarios: Hetzner Online GmbH.

Derechos: Puedes ejercitar en cualquier momento tus derechos de acceso,
rectificación, supresión, oposición y demás derechos legalmente establecidos a
través del email sergio@ayudaexcel.com.

Información adicional: Encontrarás más información en la política de privacidad.




  • Posts

    • Hola Cristian1985 Buena aporte , voy a considerar tu propuesta gracias Aqui adjunto el archivo trabajo del tema en cuestion , la idea inicial q tenia era a una tabla dinamica agregar talvez una columna calculada o algo por estilo que haga el calculo de la suma del año  Producto.xlsx
    • hola expertos buenas tardes mi idea es la siguiente en este libro1. un mensaje que me diga que celdas desea marcar de color rojo en la hoja22. de acuerdo al listado numerico de la columna A de hoja actual enviar el listado de numeros que cumple con la posicion del color de la hoja2 Libro1.xlsm
    • Recién releeo lo que escribí, 😄  Christian, lo que quise decir, es que lo que entendí de la definición de su problema, fue lo mismo que tu (al ver como lo resolviste), pero su ejemplo  nada, porque no corresponde a lo que definió. 😂 jaja.. ya mejor no sigo... 😷😵    
    • Ya casi lo tengo, pero no será hasta mañana, que aquí donde estoy ya es hora de cenar. 😉
    • Buenos días. He preparado una plantilla para organizar los turnos de trabajo con una duración mensual. Me gustaría saber si es posible que a la hora de imprimirlo, se imprimiese por semanas, manteniendo las tres primeras columnas, donde apararecen los distintos turnos y lugares de trabajo, y si, por ejemplo, la primera semana del mes empieza en miercoles, el rango empiece en dicho dia hasta el domingo. Gracias de antemano por vuestra ayuda. Saludos, Ignacio Modelo2.xlsm
  • Recently Browsing

    No registered users viewing this page.

×
×
  • Create New...

Important Information

Privacy Policy