Jump to content

Adjuntar archivos a un correo con condicion.


Go to solution Solved by muyayito,

Recommended Posts

Buenas a todo el foro.

En una macro adjunto un archivo para enviar por correo de esta forma:

adjunto = ActiveWorkbook.Path & "\" & Hoja1.[M3] & "\" & Hoja1.[M2] & "\CS_report.pdf
.Attachments.Add adjunto

Como lo haría para insertar todos los pdf que empiecen por "CS"?

Gracias por adelantado.

Link to comment
Share on other sites

Sustituye el código que has subido por este, a ver si hay suerte.

Dim MiPc, Carpeta, Ruta, Archivos, Archivo
Set MiPc = CreateObject("Scripting.FileSystemObject")
Ruta = ActiveWorkbook.Path & "\" & Hoja1.[M3] & "\" & Hoja1.[M2] & "\"
Set Carpeta = MiPc.GetFolder(Ruta)
Set Archivos = Carpeta.Files
For Each Archivo In Archivos
    If Left(Archivo.Name, 2) = "CS" Then
      .Attachments.Add Archivo, 1
    End If
Next

 

Link to comment
Share on other sites

Hace 15 horas, Antoni dijo:

Sustituye el código que has subido por este, a ver si hay suerte.

      .Attachments.Add Archivo, 1
   

 

Buenos dias Don Antoni.

Ppeleándome con tu código me sale el siguiente error:

"El objeto no admite esta propiedad"

Link to comment
Share on other sites

Hace 9 minutos , Antoni dijo:

Sube tu archivo.

No soy premium Antoni 🥺 Aparte es un gestor de correo que se llama groupwise, que no creo que lo tengas y necesita libreria para referencia.

Estoy pensando que una solucion seria listar en una columna los archivos de la carpeta y cogerlos de ahi...

Edited by muyayito
Link to comment
Share on other sites

  • Solution

Solucionado. Gracias Antoni como siempre por la ayuda.

Sub LISTAR_ARCHIVOS()
    Hoja4.Activate
    Dim Ruta As String
    
    Set fso = CreateObject("Scripting.FileSystemObject")
    
    Ruta = ActiveWorkbook.Path & "\" & Hoja1.[M3] & "\" & Hoja1.[M2] & "\"
    
    Set CARPETA = fso.GetFolder(Ruta)
    Set ficheros = CARPETA.Files
    
    [A1].Value = Ruta
    
    Range("A2").Select
    For Each Archivo In ficheros
If Left(Archivo.Name, 2) = "CS" Then

ActiveCell = Archivo.Name

ActiveCell.Offset(1, 0).Select
End If
Next Archivo
    ActiveCell.EntireColumn.AutoFit
    
    Set fso = Nothing
    Set CARPETA = Nothing
    Set ficheros = Nothing
    Application.ScreenUpdating = True
    End Sub
 

Esta parte es tuya

 'Assign Attachment(s)
        For Each Archivo In Hoja4.Range("A2:A" & Hoja4.Range("A" & Rows.Count).End(xlUp).Row)
   .Attachments.Add Hoja4.[A1] & Archivo
Next

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • 29 ¿Te parecen útiles los tips de las funciones? (ver tema completo)

    1. 1. ¿Te parecen útiles los tips de las funciones?


      • No
      • Ni me he fijado en ellos

  • Ayúdanos a mejorar la comunidad

    • Donaciones recibidas este mes: 0.00 EUR
      Objetivo: 130.00 EUR
  • Files

  • Download Statistics

    • Files
      151
    • Comments
      88
    • Reviews
      25

  • Crear macros Excel

  • Posts

    • Jelow,   Vengo con una duda muy tonta, pero que me está dando quebraderos de cabeza en el código (aunque funciona todo bien, para mi sorpresa...)   Tengo una tabla, que borro fila por fila, hasta dejarla vacía y dolo dejo, la cabecera y la última fila sin borrar.   El caso es, que en el bucle que hago, al darle vueltas al código, veo que esto quizás me puede dar algún error y he lanzado un debug.print para ir testeando detalles.   DUDA: Si la tabla tiene CABECERA + FILA CON DATO + FILA FINAL (es decir, 3 filas)... ¿Porque el debug.print de "Tabla".rows.count me da 4? Entiendo que no puede empezar la cuenta en 0 ni en 1, porque no daría 4... me estoy perdiendo algo xDD   JELP 😅
    • hola @JasallBcn Es que no puede subir todo su libro, el sistema del foro no lo permite supongo debido al peso de su archivo,  debe subir una pequeña muestra.  @JUAN mecanico recrea un archivo de muestra, con la información que tienes y lo que necesitas conseguir, explicando además, de donde salen los resultados.   saludos, Silvia  
    • Hola JSDJSD, te explico: en EV1_1 que es el (1er trimestre), al lado derechoo tengo que escribir la observación del estudiante; como asignó esa observación atravez de la búsqueda N.- LISTA (AY21) y lo obtiene el nombre ESTUDIANTE (AZ21), luego de eso escribimos la OBSERVACIÓN (AY25). Terminado le doy confirmar en el botón GUARDAR DATOS. Así sucesivamente en EV1_2 (2do trimestre), y EV1_3 (3er trimestre). TAL COMO LA IMAGEN1 Una vez guardados los datos automáticamente los datos los alojará en las otras hojas OBS1_1 (1er trimestre), OBS1_2 (2do trimestre) y OBS1_3 (3er trimestre), pero lo va registrar con los siguientes datos: N.- LISTA, ESTUDIANTE, DIA/FECHA/HORA, OBSERVACIÓN. TAL COMO LA INAGEN 2 a si con las otras hojas de OBS1_2 y OBS1_3. Un saludo 👋👋  
    • Buenas, como te comento @Silvia en el post , sube el archivo que tienes y así quizás alguien podrá echarte una mano. saludos  
  • Recently Browsing

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

Privacy Policy