Traducir el blog
Clases de municipios españoles
🔝To translate this blog post to your language, select it in the top left Google box.
Esta es la segunda entrega sobre municipios españoles, con la particularidad de que este mapa está hecho con un módulo de clase, de ahí el título de esta entrega: Clases de municipios españoles, que puede servir para dar clases educativas sobre los pueblos y ciudades de España.
Pasando el ratón por encima de los puntos del mapa se obtiene el municipio con sus datos, como su población y su altitud, ayudado por un módulo de clase en lenguaje VBA, pues el gráfico de dispersión no admite eventos por defecto.
Una imagen vale más que mil palabras.
Si dudabas que hay diferentes clases de municipios, los habitantes de su población son un filtro poderoso para saber la importancia de los 8.131 municipios españoles.
No es lo mismo Zaragoza con más de 600.000 habitantes que mi pueblo con unos 600 habitantes. La mitad de los pueblos españoles tienen menos de 500 habitantes y 1.356 municipios tienen menos de 100 habitantes.
No es lo mismo vivir a 200 metros de altitud que a 1 metro en la costa, pues el nivel de los mares puede subir más de lo previsto si el cambio climático se acelera. En España hay 33 municipios a menos de 5 metros de altitud.
No es lo mismo estar a más de 1.500 metros de altitud, como lo están 6 pueblos de Ávila, uno de Gerona (el único del Pirineo) y 5 de Teruel. El municipio más elevado de España es Valdelinares en Teruel a 1.695 metros de altitud.
No es lo mismo sufrir los rigores del clima según la longitud y latitud del municipio. Y si no que se lo digan a los canarios que gozan de un clima totalmente diferente a los peninsulares.
Todas estas clases de municipios se pueden analizar con este mapa...
Los datos de los 8.131 municipios se han copiado del:
Seleccionando: Nomenclátor Geográfico de Municipios y Entidades de Población
Y descargando el archivo comprimido: BD_Municipios-Entidades.zip
Extrayendo dos archivos:
- PROVINCIAS.csv, con la relación entre provincias y comunidades autonómicas.
- MUNICIPIOS.csv, con datos de todos los municipios españoles.
Datos copiados a dos tablas en sendas hojas de 'PROVINCIAS' y 'MUNICIPIOS'.
Este mapa con Clases de municipios españoles es compatible con todas las versiones de escritorio, desde Excel 2010 hasta Excel para Microsoft 365.
Descarga la versión 1.1 desde uno de estos enlaces:
- Microsoft OneDrive: Clases de municipios españoles - PW1.xlsm
- Sites Google Drive: Clases de municipios españoles - PW1.xlsm
Las macros del archivo descargado están bloqueadas por defecto. Para desbloquear las macros debes modificar las Propiedades del archivo siguiendo estas instrucciones:
Las macros de Internet están bloqueadas de forma predeterminada en Office - Deploy Office | Microsoft Learn
Abre el archivo y presiona el botón: Habilitar edición cuando aparezca el aviso de VISTA PROTEGIDA.
Presiona el botón: Habilitar contenido cuando aparezca la ADVERTENCIA DE SEGURIDAD Las macros se han deshabilitado o se deshabilitó parte del contenido activo.
Las hojas están protegidas sin contraseña y no está protegido el proyecto VBA, por lo que puedes estudiar y analizar el código de las macros.
ATENCIÓN: Se puede modificar este libro de Excel respetando esta licencia:
Creative Commons — Atribución-NoComercial-CompartirIgual-No portada — CC BY-NC-SA 4.0
En el vídeo explico cómo usar este mapa de clases de municipios españoles.
En la primera entrega expliqué cómo hice el primer mapa de municipios de España, por lo que no repetiré esa información aquí, ya que se puede leer en este enlace:
Las mejoras de esta segunda entrega sobre la primera son:
1) Mucha más funcionalidad gracias a las macros VBA.
2) Filtra automáticamente por Población mayor que un número de habitantes.
3) Selección con el ratón de un municipio.
4) Detecta los municipios sobre los que pasa el cursor del ratón.
5) Obtiene automáticamente los datos de los municipios.
6) Tamaño de los municipios según su población.
7) Etiquetas de los municipios en el mapa.
A continuación doy más detalles de cómo se han implementado estos cambios.
La tabla de municipios, denominada: TablaEspaña, de la hoja 'DATOS' se rellena con fórmulas que obtienen los datos de las hojas 'MUNICIPIOS' y 'PROVINCIAS'.
Sus campos son: Comunidades autónomas; Provincias; Municipios; Longitud; Latitud y Población.
Estos datos son el origen de la tabla dinámica de municipios, con la que se obtienen los puntos del gráfico de dispersión desde las columnas O y P.
En la celda R2 se guarda el punto seleccionado del mapa o por el que acaba de pasar el ratón. Con ese valor se obtienen los datos del municipio.
En el rango R6:R13 están varios valores del filtro de población por defecto.
En la celda R17 se guarda el valor de la casilla de etiquetas.
En la celda R21 se guarda el valor de la casilla de municipios según su población.
En la celda R25 se guarda el valor de la casilla de contornos de provincias.
Cuando hay cambios en el rango de la columna M, con la población de la tabla dinámica, se dispara el evento Worksheet_Change, que llama a la macro: CambiarMunicipios.
Eventos del gráfico de dispersión
Si nunca has usado módulos de clase, esta es la mejor ocasión para comenzar con estas Clases de municipios españoles.
Por defecto no se pueden usar eventos en los gráficos incrustados, por lo que hace falta insertar un módulo de clase para escuchar los eventos del gráfico de dispersión. Más información en esta página:
Por lo que he creado el módulo de clase: CChartEvent
Definiendo el objecto EventChart para escuchar eventos:
Public WithEvents EventChart As Chart
En ese módulo de clase cancelo los eventos de doble clic y de botón derecho del ratón y atiendo los eventos de selección de un punto del gráfico, gracias al código de Jon Peltier.
El principal evento es el del movimiento del ratón: EventChart_MouseMove
que permite identificar el punto sobre el que pasa el ratón, llamando a la macro: IdentificarPunto x, y
Que ejecuta: EventChart.GetChartElement x, y, ElementID, Arg1, Arg2
En el último argumento (Arg2) se obtiene el número del punto del gráfico sobre el que ha pasado el ratón, con lo que se puede obtener información del municipio asociado a ese punto...
El método GetChartElement devuelve información sobre el elemento de gráfico en las coordenadas x e y especificadas. Este método tiene la particularidad de que sólo se especifican los valores de los dos primeros argumentos. Microsoft Excel rellena el resto de los argumentos y el código debe examinar sus valores al finalizar el método.
Sin embargo, antes de ejecutar los procedimientos, se debe conectar el objeto declarado en el módulo de clase con el gráfico incrustado.
Para ello, en el módulo MóduloMunicipios se declara:
Dim clsChartEvent As New CChartEvent
Y se indica a qué gráfico se le habilitan los eventos:
Set clsChartEvent.EventChart
= Sheets("MAPA").ChartObjects("Gráfico Municipios").Chart
¡Ya se puede pasar el ratón por encima para interactuar con el mapa!
¡Esta es la mejora más importante de este mapa! ¿Qué te parece?
Cuando se marca la casilla: Municipios según su población, el tamaño de los puntos varía según la población del municipio, con la macro: CambiarMunicipios
Se cambia el tamaño de cada marcador dependiendo de la población.
Si se desmarca la casilla, todos los marcadores son del mismo tamaño, con los puntos iguales de todos los municipios.
Cuando se marca la casilla: Etiqueta hasta 200 municipios, al lado de cada punto se muestra la etiqueta con el nombre del municipio, con la macro: CambiarMunicipios
Si hay más de 200 municipios filtrados, no se muestra ninguna etiqueta. Tampoco si se demarca la casilla.
En la celda Q6 se introduce un valor de población, con lo que se filtran automáticamente los municipios que son mayores de ese valor.
Para llegar a esa celda cuando está activo el gráfico, se debe teclear <Esc> (la tecla de arriba a la izquierda en el teclado) y luego la tecla <Tab> (la tecla encima de Bloq Mayús)
En la celda Q6 hay un desplegable con algunos valores de Población, pero se puede introducir cualquier número mayor o igual que cero.
Este filtro se hace en la hoja 'MAPA', con el evento Worksheet_Change que refresca automáticamente la tabla dinámica de la hoja 'DATOS' y refresca todo el libro.
En los comentarios del vídeo me han sugerido marcar más el contorno de las provincias, que está muy difuminado. Por lo que he añadido una casilla para marcar los contornos de las provincias, con la macro: CambiarContornoMapa.
¿Queda más claro?
En este enlace están todas las entregas dedicadas a los municipios españoles que he escrito hasta ahora:
En la próxima entrega exploraré filtros alternativos a las segmentaciones de datos.
Mi lista de blogs
-
Nueva Función TRIMRANGE y Nuevo Operador de Rango - Hoy vengo con novedades emocionantes en Excel: Microsoft ha liberado una nueva función llamada TRIMRANGE y ha introducido un nuevo […] The post Nueva Fun...Hace 1 día
-
Divisor propio mayor que la raíz cuadrada - Explorando por OEIS, encontré un tipo de números en https://oeis.org/A332269 y me ha apetecido desarrollar el tema mediante nuestras funciones en hoja ...Hace 1 día
-
PASAR DATOS A FILAS SEGÚN ELEMENTOS ENTRE GUIONES UTILIZANDO POWER QUERY - Hola a todos! Después del post anterior (aquí) en el que realizábamos una tarea utilizando VBA, me gustaría replicar el mismo trabajo pero usando Power …...Hace 3 días
-
3DFrame-py; with non-linear analysis - Exactly a year since the previous update I have revised the 3DFrame-py spreadsheet with the addition of non-linear analysis options. The new files can be d...Hace 4 días
-
Tiempo pasado, presente y futuro - 🔝*To translate this blog post to your language, select it in the top left Google box. * AVISOS que salvan vidas Haciendo caso de las posibles inund...Hace 5 días
-
Color, Conditions, and Copilot: How to save time using conditional formatting with Copilot in Excel - Hi everyone, this is part 11 in a series of posts to show you some of the things that are possible to do with Copilot in Excel. *What is conditional f...Hace 6 días
-
5 Ways to Calculate Hours Worked in Microsoft Excel - Wondering how to calculate hours worked in Excel? You’ve reached the best resource to learn from. So, tag along! Calculating time values in Microsoft Excel...Hace 1 semana
-
Insertar un objeto vinculado en Excel es fácil y práctico - Aprende a insertar un objeto en Excel. Ya puedes traer objeto vinculado en Excel de manera más avanzada que con los comandos Copiar y Pegar te permiten t...Hace 1 semana
-
Debra’s Excel News–October 2024 - New PIVOTBY function, get ready for Spreadsheet Day, and more, in this month’s Excel news. Visit my Excel website for more tips, tutorials and videos, and ...Hace 4 semanas
-
4 ejemplos de utilización de validación de datos con fórmulas - Ya sabes que la herramienta de Validación de datos es de gran utilidad para controlar y restringir la introducción de datos y así, asegurarte de…Hace 1 mes
-
Trucos de Excel: Referencias Relativas, Absolutas y Mixtas Explicadas ✨ [VIDEO] - ¡Hola a todos! Hoy hablaremos sobre un tema muy importante para quienes usan Excel: los tipos de referencia. Las referencias son fundamentales al momento d...Hace 1 mes
-
How To Predict Bearing Life With Excel - When you work in mechanical engineering, understanding the reliability and performance of bearings under various conditions is crucial. Bearings are the co...Hace 2 meses
-
How to calculate WEEKNUMBER in Month / Quarter / Year with Excel? - Let's say you have daily data and your boss wants to see the trends by week in month or week in quarter? How do you calculate the week number in a month ...Hace 2 meses
-
Excel: Cálculo de Finiquito, Beneficios Sociales Bolivia - Es importante tener nociones mínimas acerca el cálculo del finiquito y Beneficios Sociales de un trabajador en Bolivia, ya sea para la verificación de nues...Hace 2 meses
-
-
Minutos de juego y puntos. El Espanyol, sus finales de partido y mis enfados - Pienso que el Espanyol este 2024 se está dejando muchos puntos al final de los partidos. Cuando el ... Leer más » The post Minutos de juego y puntos. El ...Hace 7 meses
-
TikTok’s search evolution - 2 in 5 Americans use TikTok as a search engine. Nearly 1 in 10 Gen Zers are more likely to rely on TikTok than Google as a search engine. More than half of...Hace 7 meses
-
MASTERCLASS Gratis – Gráfica de Gestión Proyectos en #EXCEL. - Aprende a crear un Gráfico de CURVA S, ideal para GESTIÓN DE PROYECTOS, porque te permite identificar como esta tu proyecto tanto en COSTOS como en TIEMP...Hace 8 meses
-
Interés compuesto con Excel - Este es un mapa mental de las distintas funciones Excel para calcular el valor del dinero en el tiempo aplicando la ley de capitalización compuesta. En ...Hace 9 meses
-
Demos cursos de Excel 2007, 2010, 2013, 2016, 365 - Puedes consultar las demostraciones de los siguientes capítulos de los cursos Excel. Demo cursos ExcelHace 9 meses
-
Unblocking and Enabling Macros - When Windows detects that a file has come from a computer other than the one you're using, it marks the file as coming from the web, and blocks the file....Hace 1 año
-
-
Navigating Outlook Favorites - I have these four favorites defined in Outlook: From the inbox, I could hit Shift+F6 to get into the Favorites area but sometimes I would end up in no man’...Hace 1 año
-
Office Scripts: Trabajando con Tablas - [image: Office Scripts: Trabajando con Tablas] Me he dado cuenta que últimamente solo escribo de lenguaje M (es mi pequeño vicio)... pero hay que liberar l...Hace 1 año
-
Progress on the Block Protocol - Since the 1990s, the web has been a publishing place for human-readable documents. Documents published on the web are in HTML. HTML has a little bit of… Re...Hace 1 año
-
Hello world! - [image: Hello world!] Welcome to WordPress. This is your first post. Edit or delete it, then start writing!Hace 2 años
-
Decálogo para realizar Trabajos de Fin de Grado (TFGs) y de Fin de Máster (TFMs) - 1.- Tanto TFGs como TFMs son un requisito para graduarse a la vez que una oportunidad para aprender. Así, el tiempo que se le dedica es muy variable. De...Hace 3 años
-
London Excel Meetup Workbooks - The workbooks used in my presentation on “Analytical and Interactive Dashboards in Excel” at the London Excel Meetup, September 3, 2020Hace 4 años
-
Cálculo de jornada que termina al día siguiente (Power Query) y despedida - [image: Cálculo de jornada que termina al día siguiente (Power Query) y despedida] Este blog se ha ocupado de cálculos de tiempo con bastante intensidad, c...Hace 4 años
-
Visualize parts and whole - combine clustered column and stacked column charts - *Inga: Disa what?* *Igor: -ppeared.* by The FrankensTeam ------------------------------ Really it was 3 years ago we posted our last article? *Freddy: Th...Hace 5 años
-
-
-
-
-
-
-
-
-
No Response to "Clases de municipios españoles"
Leave A Reply
Indícame las erratas que encuentres y qué es lo que te gustaría ver en los próximos artículos.