Excluir una dirección de correo

El siguiente código envía correos de forma automática a una serie de direcciones de correo y lo hacemos a través de un botón dentro de un formulario.
Mi intención es poder excluir alguna dirección si fuera necesario, ¿cómo lo hago? A través de un MSGBOX? ¿Me pueden ayudar?
Este es el código que empleo:
Private Sub Opción52_Click()
Dim NombreInforme As String
Dim destinatario As String
Dim CC As String
Dim Asunto As String
Dim Cuerpo As String
'PETER MENSAH
NombreInforme = "1_Resumen Preparacion_Peter Mensah"
destinatario = "xxxxxxxxxx@xxx"
CC = ""
CC0 = ""
Asunto = "Productividad"
Cuerpo = ""
EmailMasivo NombreInforme, destinatario, Asunto, Cuerpo,, CC

Respuesta
1

Hay muchas formas de filtrar los destinatarios, acostumbro tomarlos de un cuadro de lista, por ejemplo:

Selecciono solo lo destinatarios que les envío el correo, este es el código del botón "Enviar Correo"

Private Sub btnCorreo_Click()

Dim varPosicion As Variant

If Me.lstAlumnos.ItemsSelected.Count = 0 Then
  MsgBox "Debe seleccionar al menos un alumno.", vbInformation, "Correo"
  Exit Sub
End If

'Acá envío el correo solo a los elementos que estén seleccionados

For Each varPosicion In lstAlumnos.ItemsSelected
   EmailMasivo NombreInforme, Me.lstAlumnos.ItemData(varPosicion), Asunto, Cuerpo, , CC
Next varPosicion

Bueno esto es una idea seguro que otras formas.

¡Gracias! 

No es exactamente lo que buscaba. Pensaba mejor en excluir uno que incluir  a 30...

Muy sencillo le adicionamos un botón para seleccionar TODOS,

Este es el código del botón << Todos >>.

Private Sub btnTodos_Click()

  Dim intNumAct As Integer

   For intNumAct = 0 To Me.lstAlumnos.ListCount - 1

      Me.lstAlumnos.Selected(intNumAct) = True

   Next intNumAct

End Sub

Ya es más fácil desmarcar el que no se le envía el correo.

Puede crear un botón para desmacarlos, cambie True por False, algo como:

Private Sub btnDesmarcar_Click()

  Dim intNumAct As Integer

   For intNumAct = 0 To Me.lstAlumnos.ListCount - 1

      Me.lstAlumnos.Selected(intNumAct) = False

   Next intNumAct

End Sub

Listo fácil.

Al marcar todos y deseleccionar un registro

De esta forma se enviarán solo 4 correos.

Me da un error de compilación: No se encontró el método o el dato miembro.

En esta línea

For intNumAct = 0 To Me.lstAlumnos.ListCount - 1

No existe el nombre del cuadro de lista, debe cambiar lstAlumnos por el nombre que tenga su cuadro de lista. Se me olvidó comentarle que el en propiedades del cuadro de lista, Otras, Selección Múltiple debe estar en Simple.

Ahora, si no tiene información restringida puede enviarme su base de datos a [email protected] y con gusto le colaboro. Favor escribir en el Asunto la consulta de todoexpertos.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas