¿Cómo excluir archivos específicos al adjuntar desde una carpeta en Excel?

Para excluir archivos específicos al adjuntar desde una carpeta en Excel mediante un script de VBA (Visual Basic for Applications), puedes seguir estos pasos:

  • Abrir el Editor de VBA: En Excel, presiona `ALT` + `F11` para abrir el Editor de VBA.
  • Insertar un Módulo: Ve a `Insertar` > `Módulo`, lo que creará un nuevo módulo donde puedes escribir tu código VBA.
  • Escribir el Código VBA:

Aquí hay un ejemplo de código VBA que adjunta todos los archivos de una carpeta, excluyendo aquellos que especifiques:

   Sub AdjuntarArchivosExcluyendoEspecificos()
       Dim OutlookApp As Object
       Dim OutlookMail As Object
       Dim FileSystem As Object
       Dim Carpeta As Object
       Dim Archivo As Object
       Dim RutaCarpeta As String
       Dim Excluir As Collection
       Dim NombreArchivo As String
       
       ' Establecer la ruta de la carpeta
       RutaCarpeta = "C:RutaATuCarpeta" ' Cambia esto a tu ruta
       
       ' Crear colección de archivos a excluir
       Set Excluir = New Collection
       Excluir.Add "excluir1.txt"
       Excluir.Add "excluir2.docx"
       ' Añade más archivos a excluir si es necesario

       ' Crear objetos de aplicación y carpeta
       Set FileSystem = CreateObject("Scripting.FileSystemObject")
       Set Carpeta = FileSystem.GetFolder(RutaCarpeta)

       ' Crear un nuevo objeto de Outlook
       Set OutlookApp = CreateObject("Outlook.Application")
       Set OutlookMail = OutlookApp.CreateItem(0)
       
       With OutlookMail
           .Subject = "Asunto del Correo"
           .Body = "Cuerpo del mensaje de correo"
           .To = "destinatario@example.com"
           
           ' Recorrer los archivos en la carpeta
           For Each Archivo In Carpeta.Files
               NombreArchivo = Dir(Archivo.Path)
               
               ' Comprobar si el archivo está en la lista de exclusión
               On Error Resume Next
               Excluir.Item NombreArchivo
               If Err.Number <> 0 Then
                   ' Si el archivo no está en la lista de exclusión, adjúntalo
                   .Attachments.Add Archivo.Path
               End If
               On Error GoTo 0
           Next Archivo
           
           ' Enviar el correo
           .Display ' Usar .Send para enviarlo directamente
       End With

       ' Limpiar
       Set OutlookMail = Nothing
       Set OutlookApp = Nothing
       Set Carpeta = Nothing
       Set FileSystem = Nothing
   End Sub
  • Modificar la Ruta y Exclusiones:
    • Cambia `RutaCarpeta` a la ruta de la carpeta desde donde deseas adjuntar archivos.
    • Añade los nombres de los archivos que quieres excluir en la colección `Excluir`.
  • Ejecutar el Script: Regresa a Excel y presiona `ALT` + `F8`, selecciona `AdjuntarArchivosExcluyendoEspecificos`, y haz clic en `Ejecutar`.

Este script abrirá un mensaje de correo nuevo en Outlook con los archivos adjuntos, excepto aquellos que hayas especificado excluir. Puedes modificar el script para adaptarlo a tus necesidades, como cambiar el asunto y destinatarios del correo, o enviarlo directamente sin mostrarlo.

Conoce nuestros servicios

Conoce nuestra tienda

Mejora tu nivel y logra tus objetivo

Excel

Excel cursos

Access

cursos de Access

Power BI

cursos power BI

Deja un comentario