Validar una dirección de correo (email) en una celda Excel

Compatibilidad: Truco compatible con Excel 365Truco compatible con Excel 2016Truco compatible con Excel 2013Truco compatible con Excel 2010Truco compatible con Excel 2007

Si en nuestra hoja necesitamos escribir email, podemos validar una dirección de correo (email) en una celda Excel.

Validar una dirección de correo (email) en una celda Excel

En nuestra hoja, disponemos de la columna A donde insertar únicamente la dirección de correo electrónico (email) de nuestros clientes.

 A
1Email

Emplearemos las siguientes funciones anidades en la validación de datos:

  • Función O. Comprueba si alguno de los argumentos es VERDADERO y devuelve VERDADERO O FALSO.
  • Función ESNUMERO. Comprueba si a un valor es un número y devuelve VERDADERO o FALSO.
  • Función COINCIDIR. Devuelve la posición relativa de un elemento en la matriz, que coincida con un valor dado en el orden deseado.
  • Función MINUSC. Convierte todas las letras de la cadena de texto en minúsculas.
  1. Seleccionar el rango A2:A15. O el rango deseado donde validar la dirección de correo.
  2. Ir a: cinta de opciones / Pestaña: Datos / Grupo: Herramientas de datos / Validación de datos. Mostrará ventana de validación.
  3. Clic en Pestaña: Configuración.
    Ventana de configuración en validación de datos
  4. Ir a: Permitir / Seleccionar: Personalizada.
  5. Ir a: Fórmula / Escribir:
    =O(ESNUMERO(COINCIDIR("*@*.???";A4;0));ESNUMERO(COINCIDIR("*@*.??";A4;0)))

    O también, para forzar a escribirlo en minúsculas:

    =MINUSC(O(ESNUMERO(COINCIDIR("*@*.???";A2;0));ESNUMERO(COINCIDIR("*@*.??";A2;0))))
  6. Clic en Pestaña: Mensaje de error.
    Ventana de mensaje de error en validación de datos
  7. Ir a: Estilo / Seleccionar: Detener.
  8. Ir a: Título / Escribir: Error.
  9. Ir a: Mensaje de error / Escribir: El valor insertado no corresponde a una cuenta de correo electrónico (email). O el texto deseado.
  10. Pulsar el botón Aceptar. Cierra la ventana y aplica la validación.
  • VERIFICAR FUNCIONAMIENTO
  1. Ir a: Celda A2 / Escribir: usuario. Verificar como se muestra ventana de detener con el mensaje indicado en la validación para evitar insertar un valor que no sea email.
  2. Pulsar el botón Cancelar. Continuar insertando datos.
  3. Ir a: Celda A2 / Escribir: 12345 Verificar como se muestra ventana de detener con el mensaje indicado en la validación para evitar insertar un valor que no sea email.
  4. Pulsar el botón Cancelar. Continuar insertando datos.
  5. Ir a: Celda A2 / Escribir: usuario@cuenta.cuenta Verificar como se muestra ventana de detener con el mensaje indicado en la validación para evitar insertar un valor que no sea email.
  6. Pulsar el botón Cancelar. Continuar insertando datos.
  7. Ir a: Celda A2 / Escribir: usuario@cuenta.com Verificar como se admite el valor escrito, extensión con tres caracteres (com).
  8. Ir a: Celda A3 / Escribir: usuario@cuenta.es Verificar como se admite el valor escrito, extensión con dos caracteres (es).
Validar una dirección de correo (email) en una celda Excel

  

Nivel de dificultad: Avanzado Excel Avanzado

31 comentarios en “Validar una dirección de correo (email) en una celda Excel

  • Oye me puedes ayudar, hago todos los pasos que indicas, si escribo 12345 listo me sale el error, pero así escriba bien el correo me sigue saliendo el error.
    muchas gracias por la ayuda

    • Hola Adriana,

      Verifica que la fórmula la tengas bien escrita, la referencia sería, "*@.???" asterisco / arroba / punto / cierre de interrogación / cierre de interrogación / cierre de interrogación.
      Según el idioma serían dobles comillas o comillas simples.

      Saludos.

      • Me funcionó modificando las comillas y revisando lo de: *@.??? con el siguiente texto:

        =O(ESNUMERO(COINCIDIR("*@.???";A4;0));ESNUMERO(COINCIDIR("*@.???";A4;0)))

        Muchas gracias.
        Una duda. Esta función analiza los datos nuevos introducidos en una columna, pero si ya tenemos una columna con muchos mails, ¿como valido esos datos ya introducidos?
        Gracias

  • Me puedes ayudar para validar que no tenga un punto antes o despues de la @ ".@" o "@." y que no tenga punto y coma ";" ,

    Muchas Gracias

  • Hola! muy buen aporte gracias!
    Tengan en cuenta que ésta formula no prevee los dominios que terminan con más de 3 letras, por ejemplo:
    .travel
    .coop
    .info
    etc...
    lo cual se puede salvar agregando las opciones de .4letras y .6letras a la función O, pero de alguna forma degradará la calidad de la validación a menos que se agregue una por cada opción posible.
    Saludos!

  • Hola, aplico la formula a tal cual se indica, pero así ponga correcto el correo, me sigue generando error. Esta es la formula que estoy utilizando: =O(ESNUMERO(COINCIDIR("*@*.???";P7;0));ESNUMERO(COINCIDIR("*@*.???";P7;0)))

          • Tengo una columna para ingresar correos electrónicos, quiero que los correos queden bien escritos, que no les falte el @ ni el dominio. Lo que estoy haciendo es señalar la columna, me voy a Datos>Validación de datos>Personalizada>Pongo la fórmula: O(ESNUMERO(COINCIDIR("*@*.???";P7;0));ESNUMERO(COINCIDIR("*@*.??";P7;0)))>Le pongo mensaje de error>Aceptar. Cuando ingreso el correo mal, me sale efectivamente el mensaje de error, pero si coloco el correo bien, me sigue saliendo el mismo mensaje ;/

  • Hola como estas si me funcionó me gustaria que me ayudaras a que fuera generalizado ya que tengo una base de mas de mil datos

  • Hola
    He estado tratando de colocar esa fórmula en un registro que se debe llenar, el cual corresponde a las celdas AD2 que es el correo electrónico, que sería algo así:
    =O(ESNUMERO(COINCIDIR("*@*.???";AD2;0));ESNUMERO(COINCIDIR("*@*.??";AD2;0)))
    y me rebota el mensaje de "Hay un error con esta fórmula ..."

    Estoy usando Excel 365.

    Salu2©

          • Hola buenas tardes.
            Muchas gracias por su ayuda, me sirvió solo en versión Office 2016 y 2013, en 365 no me corre ni sustituyendo punto y coma por comas y viceversa,,,, pero conque me corra en 2016 es más que suficiente.
            Excelente tarde y sigan con tan excelentes tips 😀

            Salu2©

  • Buenas tardes.

    Puse la fórmula en una columna nueva para validar los datos de una columna anterior, pero al pegar o traer los correos electrónicos con un = no me marca ninguna validación, solo al teclear el la dirección del mail. ¿Sería posible realizarlo como lo indico?
    La base de datos con la que cuento es de más de 20,000 correos electrónicos a depurar.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.