Skip to main content

¿Cómo extraer el código postal de una lista de direcciones en Excel?

Author: Sun Last Modified: 2025-08-06

Al gestionar información de clientes en Excel, es común tener una lista de direcciones completas donde cada entrada contiene tanto detalles de la calle como un código postal. Si necesitas aislar y extraer solo los códigos postales de estas direcciones, tal vez para listas de correo, análisis regionales o formato de datos, separarlos manualmente uno por uno puede ser tedioso y propenso a errores, especialmente con grandes volúmenes de datos. Afortunadamente, Excel ofrece formas prácticas de extraer rápidamente múltiples códigos postales a la vez sin esfuerzo manual. Este artículo proporciona instrucciones paso a paso para extraer códigos postales de direcciones usando una fórmula de Excel y una solución mediante macro VBA.

Extraer código postal con fórmula en Excel

Extraer código postal con Función Definida por el Usuario en Excel


Extraer código postal con fórmula en Excel

En muchas listas de direcciones comunes, el código postal se encuentra al final de la cadena de dirección y no tiene más de 8 caracteres. Este método es más adecuado cuando todas las direcciones en tu lista siguen un formato consistente y el código postal aparece como el último elemento de cada dirección, separado por espacios.

Para extraer rápidamente el código postal utilizando una fórmula, sigue estos pasos:

1. Selecciona una celda en blanco donde deseas que aparezca el código postal (por ejemplo, B1 si tu dirección está en A1). Introduce la siguiente fórmula:

=MID(A1,FIND("zzz",SUBSTITUTE(A1," ","zzz",SUMPRODUCT(1*((MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))=" "))-1))+1,LEN(A1))

2. Presiona la tecla Enter. El código postal de la dirección en A1 se mostrará en la celda seleccionada.

3. Para aplicar esta fórmula a otras direcciones, selecciona la celda con la fórmula, arrastra el controlador de relleno hacia abajo a lo largo de la columna para cubrir todas las filas de direcciones, y Excel extraerá automáticamente el código postal para cada dirección.

a screenshot of extracting postcode from address list with formula

Consejo: Esta fórmula asume que el código postal es el último elemento después del último espacio en la cadena de dirección. Si tus direcciones están estructuradas de manera diferente, como códigos postales que aparecen en medio o separados por comas, esta fórmula puede no devolver el resultado correcto. Para extender este método a códigos postales internacionales u otros formatos personalizados, podrías necesitar un enfoque más avanzado o probar la solución VBA a continuación.


Extraer código postal con Función Definida por el Usuario en Excel

Si tus datos de dirección son más complejos, inconsistentes o contienen códigos postales en varios formatos y posiciones dentro de la cadena, como se muestra en la siguiente captura de pantalla, una macro VBA puede ofrecer opciones de extracción más flexibles. Este método automatizado procesa rápidamente toda una columna de direcciones para aislar y devolver solo los códigos postales, ahorrando tiempo significativo y minimizando el esfuerzo manual.

 extract various postcodes from address list

1. Presiona Alt + F11 para abrir la ventana de Microsoft Visual Basic for Applications.

2. En la ventana de VBA, haz clic en Insertar > Módulo para crear un nuevo módulo. Copia y pega el siguiente código VBA en la ventana del módulo:

Public Function ExtractPostcode(text As String) As String
    Dim reg As New RegExp
    Dim m As MatchCollection
    reg.Pattern = "\b([A-Z]{1,2}\d{1,2}[A-Z]?\s*\d[A-Z]{2}|\d{5}(?:-\d{4})?|\d{6})\b"
    reg.IgnoreCase = True
    reg.Global = False
    
    If reg.Test(text) Then
        Set m = reg.Execute(text)
        ExtractPostcode = m(0).Value
    Else
        ExtractPostcode = ""
    End If
End Function

3. Después de pegar el código, en la ventana del editor de VBA, elige Herramientas > Referencias. Ver captura de pantalla:

click Tools > References

4. En el cuadro de diálogo Referencias, marca Microsoft VBScript Regular Expressions 5.5 y haz clic en Aceptar.

check Microsoft VBScript Regular Expressions 5.5

5. Regresa a la hoja de cálculo e introduce esta fórmula: =ExtractPostcode(A2), arrastra el controlador de relleno hacia abajo a otras celdas. Todos los códigos postales se muestran de inmediato, ver captura de pantalla:

tye a formula to get the result

Consejo: Con este código, puedes extraer automáticamente códigos postales de cualquier país o región en Excel en segundos; simplemente ajustando la expresión regular para coincidir con las reglas de código postal de tu área objetivo, puedes adaptarte rápidamente a diferentes formatos, como el “SW1A 1AA” del Reino Unido, el “12345-6789” de EE.UU. o el “100000” de China, mejorando enormemente la eficiencia de limpieza y análisis de datos.


Artículos relacionados:


Las mejores herramientas de productividad para Office

🤖 Asistente de IA de Kutools: Revoluciona el análisis de datos basado en: Ejecución inteligente |Generar código |Crear fórmulas personalizadas |Analizar datos y generar gráficos |Invocar funciones mejoradas
Funciones populares: Buscar, resaltar o marcar duplicados | Eliminar filas en blanco | Combinar columnas o celdas sin perder datos | Redondear...
Super BUSCARV: Búsqueda con múltiples criterios | Búsqueda de múltiples valores | Búsqueda en varias hojas | Coincidencia difusa....
Lista desplegable avanzada: Crea rápidamente listas desplegables | Lista desplegable dependiente | Lista desplegable con selección múltiple....
Administrador de columnas: Agregar un número específico de columnas | Mover columnas | Cambiar la visibilidad de columnas ocultas | Comparar rangos y columnas...
Funciones destacadas: Cuadrícula de enfoque | Vista de diseño | Barra de fórmulas mejorada | Administrador de libros y hojas de cálculo | Biblioteca de AutoTexto | Selector de fechas | Combinar Datos | Encriptar/Descifrar celdas | Enviar correo electrónico por lista | Super Filtro | Filtro especial (filtro negrita/cursiva/tachado...)...
Top15 conjuntos de herramientas:12 herramientas de texto (Agregar texto, Eliminar caracteres, ...) | Más de50 tipos de gráficos (Diagrama de Gantt, ...) | Más de40 fórmulas prácticas (Calcular edad basada en la fecha de nacimiento, ...) |19 herramientas de inserción (Insertar código QR, Insertar imagen desde ruta, ...) |12 herramientas de conversión (Convertir a palabras, Conversión de moneda, ...) |7 herramientas de combinar y dividir (Combinar filas avanzado, Dividir celdas, ...) | ... y mucho más
Utiliza Kutools en tu idioma preferido: ¡compatible con Inglés, Español, Alemán, Francés, Chino y más de40 idiomas adicionales!

Impulsa al máximo tu dominio de Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para potenciar la productividad y ahorrar tiempo.Haz clic aquí para obtener la función que más necesitas...


Office Tab aporta una interfaz de pestañas a Office y hace tu trabajo mucho más sencillo

  • Habilita la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
  • Abre y crea varios documentos en nuevas pestañas de la misma ventana, en vez de en nuevas ventanas.
  • ¡Aumenta tu productividad hasta un50% y reduce cientos de clics de ratón cada día!