Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado

Concatenar el contenido de un rango de celdas (mail recordatorio)

| 4 comentarios

El Grupo DREFFUS tiene a cargo varios locales distribuidos en zonas estratégicas de Lima. Cada uno de los locales ingresa su solicitud de requerimiento a través del sistema con carácter bimensual. La unidad de Logística consolida los pedidos una semana antes del cierre para luego derivarlo a la unidad de Compras. Sin embargo, es común ver que algunos de los locales no ingresan su solicitud faltando pocos días para el cierre. Entonces, a fin de cerrar el proceso, se envía un correo recordatorio sólo a aquellos locales que no han hecho pedido por diferentes motivos.

Por lo anterior, para evitar errores en digitación y ahorrar tiempo, he creado una macro que nos permita unir las direcciones electrónicas (de los locales que NO han ingresado su pedido)  separándolas con una coma (,), listas para copiar y pegar en el correo recordatorio.

MAIL RECORDATORIO

Creado por: César Huaynate

4 comentarios

  1. César.
    Estuve revisando tu programación y me salto la duda acerca de la función MAIL_RECORDATORIO, donde utilizas una variable x.
    Dim x As Variant
    Tiene alguna función??? la borro y tu UDF sigue realizando la misma tarea.
    Atte.
    LB.

    • Luis:

      Al parecer, utiliza, Dim x As Variant, para poder almacenar cualquier tipo de valor y con un tamaño de almacenamiento de aprox. 22 bytes, ya que en este ejemplo, dependerá de la cantidad de correos, que se encuentren en esta lista para enviar.

      Recordemos que la forma más sencilla de declarar una variable en una macro es usar la instrucción Dim, y Variant, es el único de todos los tipos de datos que permite almacenar cualquier tipo de valor, puede contener datos numéricos, de cadena o de fecha. El tipo de datos Variant tiene un tamaño de almacenamiento numérico de 16 bytes y puede contener datos hasta el rango de un decimal, o un tamaño de almacenamiento de caracteres de 22 bytes (más longitud de la cadena), y puede almacenar cualquier texto o carácter.

      Saludos

  2. Estimado Luis,

    Los que sucede es que Dim se utiliza para declarar variables; sin embargo, en Visual Basic no es necesario declarar una variable antes de utilizarla, pero si no se hace, puede ser una fuente de errores si se manejan datos complejos.

    Espero haberte ayudado.

    Saludos

  3. Tengo una pregunta: Que pasa si no tengo todos los correos. Al menos desconozco uno. En ese caso la función arroja una doble coma. ¿Como se puede hacer para que no incluya las celdas vacías en la concatenación??

Deja una respuesta

Los campos requeridos estan marcados con *.