Buen día, ciertamente puedes mandar un correo con un mismo cuerpo, a distintos destinatarios y con diferentes ficheros adjuntos, pero esto solo lo puedes hacer directamente desde Outlook en tu PC. Lo último, puedes lograrlo activando la librería de esta herramienta, así:
- Primeramente entra a “Outlook”.
- Una vez que te encuentres dentro de dicha aplicación, procede a hacer click en “Herramientas”.
- Luego presiona sobre la alternativa de “Referencias”.
- Como veras se te abrirá una nueva ventana, en ella tienes que buscar la descripción “Microsoft Outlook (versión) Object Librery” y hacer click sobre ella, para que luego presiones en “Aceptar”.
Al hacer esto último, ya podras enviar los emails a varios destinatarios, aunque para ello tienes que crear un botón utilizando “Control ActiveX”, esto último lo haces siguiendo este tutorial:
- Entra en la alternativa de “Desarrollador” que se encuentra en la parte de arriba del menú de opciones.
- Acto seguido dirígete a la opción de “Insertar”.
- Una vez hecho esto, tienes que seleccionar el tipo de control que deseas asignar (Debes colocar el cursor sobre cada una de estas pestañas para que se te especifique la acción).
- Finalmente cuando se cree el comando, debes proceder a entrar donde está el comando VBA y elegir el tipo de código que deseas proporcionarle al botón.
Por último, tienes que crear un código VBA con el que se establezcan diferentes enlaces para enviar 5 mensajes distintos a la misma vez, y con capacidad de adjuntar en cada uno de ellos los ficheros que se deseen.
Esto último puedes lograrlo con el siguiente comando:
Sub seleccionararchivosadjuntos3(nocolumna As Integer)
Application.ScreenUpdating = False
Dim i, j As Integer
Dim numeroArchivos As Integer
Dim hoja As Worksheet
Set hoja = ActiveWorkbook.Worksheets("Ejemplo3")
Dim fldr As FileDialog
Set fldr = Application.FileDialog(msoFileDialogFilePicker)
'determinar cuantos archivos adjuntos hay
numeroArchivos = 0
Do While hoja.Cells(12 + numeroArchivos, nocolumna) <> ""
numeroArchivos = numeroArchivos + 1
Loop
'preguntar si desea borrar los archivos ya adjuntados (en caso de que los haya)
If numeroArchivos <> 0 Then
If MsgBox("¿Desea borrar los archivos adjuntados existentes?", vbYesNo) = vbYes Then
hoja.Cells(12, nocolumna).Resize(10, 1).ClearContents
End If
End If
'mostrar ventana con archivos a elegir
With fldr
.Title = "Select a Folder"
.AllowMultiSelect = True
If .Show <> -1 Then Exit Sub
If .SelectedItems.Count > 10 - numeroArchivos Then
MsgBox "Sólo puede adjuntar 10 archivos cómo máximo"
Exit Sub
End If
'escribir los archivos en el excel y asignarles un hyperlink
If .SelectedItems.Count <= 10 - numeroArchivos Then
For i = 1 To .SelectedItems.Count
hoja.Cells(11 + numeroArchivos + i, nocolumna).Worksheet.Hyperlinks.Add _
anchor:=hoja.Cells(11 + numeroArchivos + i, nocolumna), _
Address:=.SelectedItems(i), _
TextToDisplay:=.SelectedItems(i)
Next i
End If
End With
Application.ScreenUpdating = True
End Sub
Y listo, ya solo deberás colocar en cada uno los documentos que desees y enviarlos a la misma vez con el botón que creaste.