1. Faro

Nivel 1 · Divide correos con LEFT, FIND y RIGHT

¿Es nuevo para ti? Lee primero el concepto: Texto por posición, fechas como números

La solicitud

De Deborah Hudson, Especialista en crecimiento

“Estoy planificando una campaña con nuestros clientes de empresa, pero varios compradores trabajan en la misma empresa y no quiero escribirle cinco veces a una misma oficina. ¿Puedes dividir cada correo en la parte antes de la @ y el dominio de la empresa después? Así puedo agruparlos por dominio.”

Tu objetivo

En E2:E25, devuelve la parte de cada correo de la columna D antes de la @ (el usuario). En F2:F25, devuelve la parte después de la @ (el dominio). Usa FIND para localizar la @, de modo que las fórmulas funcionen con cualquier longitud.

  • Llena E2:F25 con los valores correctospendiente
  • Con fórmulas, no con números escritospendiente
  • Usa FINDpendiente

Tu hoja

Excel
La hoja de este nivel
ABCDEFG
1customer_idfirst_namelast_nameemailuserdomain
23HenryBrookshbrooks@lakesidecafe.com
34BrianGrahambgraham@bluecedarhomes.com
46OliviaVasquezovasquez@foxglovedesign.co
512KyleBennettkbennett@coastalstaging.com
626AmyPerezaperez@parkrowhotels.com
727JulieCooperjcooper@northwindrentals.com
840StephanieMyerssmyers@summitofficeco.com
943JessicaRogersjrogers@summitofficeco.com
1045ChristopherDaviscdavis@oakandashinteriors.com
1151CarolSullivancsullivan@oakandashinteriors.com
1256AmandaRiveraarivera@meridianhospitality.com
1364PriyaPhillipspphillips@evergreenproperties.com
1465OliviaReedoreed@bluecedarhomes.com
1581MichelleRichardsonmrichardson@foxglovedesign.co
16103BrookeMitchellbmitchell@bluecedarhomes.com
17106RichardPhillipsrphillips@coastalstaging.com
18120KennethKimkkim@brightlinedesign.com
19121DebraWhitedwhite@meridianhospitality.com
20125JasmineGrayjgray@harlowstudio.com
21128ChristinaWhitecwhite@willowandfern.com
22139RachelBennettrbennett@brightlinedesign.com
23142BrianMorganbmorgan@evergreenproperties.com
24146ChristineMartinezcmartinez@oakandashinteriors.com
25150AvaJohnsonajohnson@oakandashinteriors.com
26
27

Cargando el editor…

    ResultadoPresiona Comprobar para comparar E2:F25

    Mote revisa tu resultado

    Presiona Comprobar. Cada celda correcta se vuelve una luciérnaga en tu linterna.

    La lección

    Una columna de direcciones de correo contiene dos datos en una cadena: quién es la persona y dónde trabaja. Para los clientes de empresa, la parte después de la @ es la empresa, que es justo lo que Deborah necesita para agrupar a los compradores en cuentas. Las hojas de cálculo no tienen un botón de “dividir en la @” que sobreviva a filas nuevas, así que combinas unas cuantas funciones de texto pequeñas.

    Contar caracteres: LEFT, RIGHT y LEN

    Las funciones de texto cuentan caracteres desde el inicio de la cadena, empezando en 1.

    Función Devuelve En D2 (hbrooks@lakesidecafe.com)
    LEN(text) cuántos caracteres LEN(D2) es 24
    LEFT(text, n) los primeros n caracteres LEFT(D2,7) es hbrooks
    RIGHT(text, n) los últimos n caracteres RIGHT(D2,16) es lakesidecafe.com
    MID(text, start, n) n caracteres desde la posición start MID(D2,9,12) es lakesidecafe

    Teclear 7 y 16 funciona solo para la fila 2. D3 es bgraham@bluecedarhomes.com, donde la @ está en otro lugar. Los conteos tienen que salir del propio texto.

    FIND encuentra el delimitador

    FIND(what, text) devuelve la posición de la primera coincidencia:

    =FIND("@",D2)

    En D2 es 8: siete letras de hbrooks y luego la @. Todo lo anterior a la posición 8 es el usuario, así que el usuario mide 8 − 1 = 7 caracteres:

    E2   =LEFT(D2,FIND("@",D2)-1)

    El dominio es lo que queda después de la @. La dirección completa tiene 24 caracteres, y 8 de ellos llegan hasta la @ inclusive, así que el dominio son los últimos 24 − 8 = 16:

    F2   =RIGHT(D2,LEN(D2)-FIND("@",D2))

    MID hace el mismo trabajo: =MID(D2,FIND("@",D2)+1,LEN(D2)) empieza un carácter después de la @ y pide más caracteres de los que quedan, lo que simplemente devuelve el resto. Usa la que te resulte más legible. Rellena ambas fórmulas hacia abajo hasta la fila 25.

    Revisa el resultado

    Echa un vistazo a la columna de dominios. La fila 4 es foxglovedesign.co, una letra más corto que un .com, y debe seguir completo; un conteo tecleado lo habría cortado o habría arrastrado la @. Después busca repeticiones: oakandashinteriors.com aparece cuatro veces en este fragmento y bluecedarhomes.com tres veces. Esas son las oficinas a las que Deborah habría escrito más de una vez.

    Una comprobación rápida en cualquier división: las piezas más el delimitador deben reconstruir el original. =E2&"@"&F2=D2 devuelve TRUE en todas las filas cuando no se perdió nada.

    TEXTBEFORE y TEXTAFTER

    Excel 365 tiene dos funciones que hacen la división en un solo paso:

    =TEXTBEFORE(D2,"@")
    =TEXTAFTER(D2,"@")

    Son más fáciles de leer y aceptan un número de instancia para cadenas con varios delimitadores (TEXTAFTER(D2,".",-1) devuelve la última parte, com). Las versiones antiguas de Excel no las tienen, así que una hoja que envíes a un cliente puede mostrar #NAME?. LEFT con FIND funciona en todas las versiones y en Google Sheets, y por eso este ticket lo pide. Aprende ambas y elige según quién abra el archivo.

    Texto en columnas: la división de una sola vez

    A veces una importación entera cae en una sola columna. Un CSV abierto de la forma equivocada te da filas como Hazel Linen Throw Pillow,2,20.99: producto, cantidad y precio pegados con comas. Para eso no necesitas fórmulas. Selecciona la columna, luego Datos → Texto en columnas, elige Delimitados, marca Coma, y Excel escribe cada pieza en su propia columna (comprueba antes que las columnas de la derecha estén vacías, o las sobrescribe). En Google Sheets es Datos → Dividir texto en columnas. Importar el archivo con Datos → Desde texto/CSV evita el problema desde el principio, porque Excel detecta el delimitador por ti.

    La diferencia con este nivel: Texto en columnas es una acción única que escribe valores. Cuando llegue la exportación de la semana que viene, lo haces otra vez a mano. Las fórmulas que acabas de escribir se recalculan en cualquier fila nueva que pegues, así que úsalas para todo lo que vayas a repetir.

    Errores comunes

    • Conservar el delimitador. =LEFT(D2,FIND("@",D2)) devuelve hbrooks@. La posición de la @ cuenta la propia @, de ahí el -1.
    • FIND frente a SEARCH. FIND distingue mayúsculas de minúsculas y SEARCH no: FIND("A",D2) falla en una dirección en minúsculas. Para un símbolo como la @ se comportan igual.
    • Ningún delimitador. En un texto sin @, FIND devuelve #VALUE!. Una exportación real suele tener unos cuantos de esos; el capítulo 5 se ocupa de ellos.
    • Longitudes fijas. RIGHT(D2,16) resulta correcta en la fila 2 e incorrecta casi en todas las demás.

    Elige qué puede ejecutarse en este sitio. Puedes cambiarlo cuando quieras desde "Configurar cookies", al pie de cada página.