Traducir el blog

Mostrando entradas con la etiqueta banderas. Mostrar todas las entradas
Mostrando entradas con la etiqueta banderas. Mostrar todas las entradas

Volando por el mundo

🔝To translate this blog post to your language, select it in the top left Google box.


Volando por el mundo

Como resulta demasiado fácil volar de un país a otro del mundo,

será cuestión de visitar los países del mundo de una forma distinta.

¡Con una hoja de cálculo!

Volar por el mundo con Excel no contamina tanto como volar en avión.

Se llega a cualquier país del mundo con solo mover el ratón.

Se conocen los datos y las banderas de cada país que se sobrevuela.

Se aprenden los trucos con los que ha sido diseñado este mapa.

Comparte este mapa con todo el mundo para conocer todos los países del mundo.


Volando por el mundo puede ser muy didáctico en la enseñanza en las escuelas, cursos de geografía, y en las empresas cuyo objetivo sea tener clientes en todo el mundo, con solo adaptarlo al negocio o a la educación.


Mapa interactivo del mundo

Este mapa del mundo es el más interactivo que he hecho en Excel hasta ahora:

  • Interactúa con las formas de 240 países dibujadas en el mapa del mundo.
  • Interactúa con los países sobre los que pasa el puntero del ratón.
  • Interactúa con el nuevo Control de Usuario con información de cada país.
  • Interactúa con el modo de vuelo del puntero con el nombre, capital y bandera de un país.
  • Interactúa con el modo chincheta sin puntero.
  • Interactúa con el buscador de países con el control de cuadro combinado.
  • Interactúa con el tamaño de la información de un país.
  • Interactúa con la voz que pronuncia el nombre del país.
  • Interactúa con las etiquetas con los nombres de los países.
  • Interactúa con el reinicio y la actualización del mapa.
  • Interactúa con el zoom del mapa.
  • Interactúa con el desplazamiento horizontal o vertical del mapa.
  • Interactúa con la Wikipedia para obtener más información de los países, sus capitales, idiomas, monedas y código ISO 3166-1 de cada país.
  • Interactúa con este artículo del blog pulsando en el símbolo de información que está arriba a la derecha del Control de Usuario.

¡No encontrarás ninguno igual!


El nuevo Control de Usuario permite controlar todos los países del mapa del mundo.


Lista de Controles de Usuario (identificados con números dentro de círculos):

(1) Nombre del país 🗺️, con enlace a datos del país en la Wikipedia.

(2) Enlace a este artículo del blog con esta información.

(3) Nombre oficial del país.

(4) Capital del país con enlace a la Wikipedia.

(5) Población actualizada y superficie del país.

(6) Idiomas oficiales con enlace a la Wikipedia para el primer idioma.

(7) Monedas del país con enlace a la Wikipedia.

(8) Código ISO 3166-1 con las 3 letras que identifican al país o texto alternativo.

(9) Tecla de voz 🗣️, para pronunciar el nombre del país cuando está en rojo.

(10) Tecla de aumento o disminución del tamaño del Control de Usuario.

(11) Tecla para mostrar el Control de Usuario a la derecha ▶️ o a la izquierda ◀️ del mapa.

(12) Tecla de modo Avión 🛩️, con un puntero y el nombre del país que se sobrevuela.

(13) Tecla de modo Casa 🏡, con un puntero sin información.

(14) Tecla de modo Mundo 🌍, con un puntero con el nombre, la capital y la bandera del país que se sobrevuela.

(15) Tecla de modo Chincheta 📌, sin puntero aunque con un cuadro de búsqueda de países.

(16) Buscador de países en una lista desplegable de un cuadro combinado. Escribir caracteres comodín: asterisco * (para cualquier carácter) o interrogante ? (para un carácter). Si es pequeña la superficie del país se remarca con un cuadrado.

(17) Lista desplegable de países para seleccionar con el ratón o con las teclas de flechas o de avance y retroceso de página.

(18) Teclas de control del zoom del mapa:

ZM: Zoom Máximo del 400%

Zm: Zoom mínimo del 75%

Z0: Zoom al 100%

Z+: Zoom + 50

Z-: Zoom - 50

(19) Teclas con 4 flechas de desplazamiento del mapa: arriba⬆️, abajo⬇️, derecha➡️ e izquierda⬅️

(20) Tecla de etiqueta 💬 para mostrar el nombre del país en el mapa si está en rojo.

(21) Tecla 🔁 de reinicio del mapa y de actualización de la población de cada país.

(22) Seleccionar cualquier país del mapa haciendo clic sobre una de las 240 formas de países.


Descarga Volando por el mundo

Este mapa del mundo es compatible con todas las versiones de escritorio, desde Excel 2010 hasta Excel para Microsoft 365.

Descarga la versión 1.0 desde uno de estos enlaces:

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 3.0 No portada — CC BY-NC-SA 3.0


Vídeo para volar por el mundo

Con este vídeo aprenderás a volar por el mundo sin salir de Excel y visitarás cualquier país, obteniendo información de su población actual y de más datos del país mediante enlaces a la Wikipedia.


Todos mis mapas del mundo

Esta es la última entrega de los 5 artículos sobre mapas del mundo que he estado publicando desde hace dos meses.

En los cuatro artículos anteriores he explicado cómo he ido desarrollando este proyecto, por si te interesa estudiar cómo lo he hecho:

Hasta ahora he publicado 28 mapas distintos en este blog:

siendo el que más éxito ha tenido de momento este mapa:

Si me das ideas para construir nuevos mapas, puede ser que los veas publicados el año que viene.

¡Si antes no nos cargamos el único mundo en que podemos seguir viviendo!

Nuevo Control de Usuario personalizable

🔝To translate this blog post to your language, select it in the top left Google box.


Nuevo Control de Usuario personalizable

Para controlar el mapa del mundo, que estoy desarrollando y que pronto publicaré, he diseñado un nuevo Control de Usuario personalizable, con el que no hay necesidad de saber programar Formularios de Usuario (UserForm) en VBA.

Lo he creado con dos formas (shapes), una con una captura de un rango de celdas con la cámara de Excel, y otra con un control de etiqueta (control ActiveX) con el que detecto los clics con el ratón sobre la forma del nuevo control.

Con este nuevo Control de Usuario puedo mostrar datos de cualquier país y personalizar cualquier acción sobre el mapa: zoom, scroll, voz, etiquetas, reinicio, modo de vuelo, tamaño del control, enlaces externos, etc.

En esta imagen animada está situado arriba a la derecha con los datos de España.

Si quieres saber cómo lo he hecho, o si quieres incorporarlo en tus proyectos, ¡sigue leyendo!


Diseño del nuevo Control de Usuario

El aspecto del nuevo Control de Usuario se ha diseñado en la hoja 'Información', con fórmulas, formatos condicionales e insertando símbolos para las teclas.

El nombre del país está en el rango B2:G3 con hipervínculos creados en una fórmula para visitar el país en la Wikipedia.

El nombre oficial está en el rango B4:G5 y su capital en el rango B6:G6.

La población en el rango B7:G7 y la superficie en el rango B8:G8.

Los idiomas en el rango B9:G10, las monedas en el rango B11:G12 y el Código ISO 3166-1 del país con su abreviatura en 3 letras en el rango B13:G14.

Lo interesante viene en el rango B15:G17 con 18 celdas, en 3 filas y 6 columnas, que serán las teclas virtuales de este nuevo Control de Usuario.

Para situarse en este control se definen el eje X con 6 columnas y el eje Y con 16 filas.

La última tecla pulsada se indica en la celda F20 para el valor de X y en la celda H20 para el valor de Y.

El modo de vuelo seleccionado queda guardado en la celda B20. En este ejemplo solamente puede ser la chincheta por simplificación, pues la selección del país no se hace con el "puntero" que se comentó en artículos anteriores, sino que se hace directamente pinchando en las formas de los países.

He insertado símbolos de la fuente de caracteres Webdings para crear las teclas y caracteres Wingdings para crear las flechas.

El color de las teclas por defecto es azul y cambia a color rojo o a un color de fondo más oscuro con dos formatos condicionales en la hoja 'Información'. Ver la siguiente imagen.

Si usas este nuevo Control de Usuario ya no tendrás que programar Formularios de Usuario tan rígidos sino que podrás diseñar el control dentro de una hoja de Excel con las ventajas de personalización del diseño y de los formatos que se pueden representar dentro de las celdas.


Visualización del nuevo Control de Usuario

En la hoja 'Mapa' se visualiza arriba a la derecha el nuevo Control de Usuario.

Se visualiza con la forma (shape) de la imagen capturada por la cámara de Excel, denominada F_Información

=Información!$B$2:$G$17

con la fórmula apuntando al rango de celdas de la hoja 'Información' que aparecen en el cuadro de control.

Se controla su uso con un control de etiqueta (control ActiveX) denominado: F_Etiqueta_Info.

Este control de etiqueta está por encima de la imagen, para obtener la posición del cursor sobre el control cuando se hace clic sobre él, con lo que se determina qué tecla actúa. Se puede hacer clic en cualquier parte del control.


Programación del Control de Usuario

En la hoja 'Mapa' del proyecto VBA he codificado el evento F_Etiqueta_Info_MouseDown, con el que se obtienen las coordenadas X e Y al hacer clic con el ratón sobre el Control de Usuario.


Este evento llama a la macro: ControlMapa, pasándole la posición X e Y relativa a la anchura y a la altura del control, respectivamente.

Lo importante está en estas dos instrucciones que obtienen la posición relativa en el rango de celdas Información!B2:G17 y escriben X e Y en las celdas F20 y H20 respectivamente:

  • .Range("miTeclaX").Value2 = Int(sgX * 6) + 1
  • .Range("miTeclaY").Value2 = IIf(sgY < 0.73, Int(sgY / 0.73 * 13) + 1, Int((sgY - 0.73) / 0.09) + 14)

Este código deberá ser modificado si el control cambia ese rango de celdas para añadir o quitar filas o columnas.

En la celda F20 ahora se escribe un valor de X del 1 al 6, para indicar que columna se ha seleccionado al hacer clic en el control.

En la celda H20 ahora se escribe un valor de Y del 1 al 16, para indicar que fila se ha seleccionado al hacer clic en el control.

La siguiente instrucción concatena los valores de Y y X en una variable que sirve para seleccionar todos los casos de celdas seleccionadas:

  • iYX = .Range("miTeclaY").Value2 & .Range("miTeclaX").Value2

El primer caso encontrado es el valor: Case Is < 51

que indica que se ha pulsado en una celda cualquiera en el rango B2:G5 y la acción se hará con la macro: IrWeb, que no explicaré aquí.

Si Case 142, se ha pulsado la tecla de la celda C15 y se reiniciará el mapa con la macro: ReiniciarMapa

Para ver todas las acciones contempladas en este ejemplo tendrás que descargar el archivo más abajo.

La macro: ColocarInfo, coloca el Control de Usuario en la hoja 'Mapa', por lo que habrá que modificarla al gusto del usuario final.

Básicamente sitúa las formas del control arriba a la derecha y una encima de la otra.


Vídeo del nuevo Control de Usuario

En este vídeo explico cómo usar el nuevo Control de Usuario y cómo está hecho, por si no te ha quedado claro leyendo lo anterior.


Descarga el nuevo Control de Usuario

Descarga la versión 1.2 desde uno de estos enlaces:

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 3.0 No portada — CC BY-NC-SA 3.0


Reflexiones

Este ejercicio de diseño y desarrollo lo hago en plan educativo, en primer lugar como reto a mis neuronas para que no envejezcan demasiado pronto, y en segundo lugar como ideas educativas para los maestros que enseñan Excel en sus clases, sin olvidar enseñar a quienes no hayan visto aún un mapa en su vida como usuarios de Excel que ¡sí, se puede!

Pronto publicaré un mapa completo del mundo con todas las funciones y características que voy publicando estas últimas semanas aquí:

Aún me queda añadir la posibilidad de buscar países, que saldrá en el próximo artículo. ¡Estate atento!

Puntero al mapa de África

🔝To translate this blog post to your language, select it in the top left Google box.


Cuando diseñé el Juego de mapas en Excel del artículo anterior, me quedé con las ganas de pasar el ratón por encima del mapa e ir viendo qué país estaba debajo del cursor, sin necesidad de hacer clic en el mapa con el botón izquierdo del ratón.

En esta imagen animada puedes comprobar que ya lo he conseguido, gracias a la ayuda recibida en este foro de Excel al que recomiendo que te registres (no cobro comisión):



Cuando descargues este mapa podrás estudiar los países de África pasando el "puntero" del ratón por encima del mapa.

🕸️ Aprenderás datos de los países africanos obtenidos con Power Query.

🐭 Dale con el ratón a la celda D4 y cambiarás el modo de visualización de los datos en el mapa:

🌍 En modo "globo" los datos siguen al "puntero".

🛩️ En modo "avión" el nombre del país sigue al "puntero".

🏚 En modo "casa" los datos no siguen al "puntero".

📌 En modo "chincheta" los datos están fijos y no se usa el "puntero".

🗣️ Dale a la cabeza parlante en la celda D5 para escuchar el nombre de los países.

♻️ Si algo no funciona reinicia el mapa dando a la celda E19, con lo que también se actualizarán los datos de África con Power Query y se maximizará el mapa mediante un zoom automático.


Puntero al mapa

He creado un "puntero" virtual que sigue al puntero del ratón en todos los movimientos sobre la hoja de cálculo 'Mapa'.

El "puntero" es un círculo pequeño creado desde la cinta de opciones: Insertar > Formas > Formas básicas > Elipse, a la que se le ha dado la misma altura que anchura de 0,2 cm para crear el círculo. A esta forma del "puntero" la denomino: F_Puntero 

Al "puntero" virtual le sigue, como un perrito faldero, una "imagen  dinámica" de un rango de celdas capturada con la cámara de Excel (información aquí), con lo que se consigue mostrar dinámicamente el contenido del rango de celdas en un "Objeto Volante Identificado - OVI", por lo que no se puede clasificar como OVNI. A esta "imagen dinámica" la denomino: F_País =$C$2:$C$5

En el rango C2:C5 debe estar el texto y la bandera.

Con el "texto dinámico" se muestra el nombre del país y opcionalmente su población actual, con un estilo de WordArt para que el texto destaque en el mapa. A este "texto dinámico" lo denomino: F_Texto

La "bandera" es una imagen dinámica capturada con la cámara de Excel. A esta "bandera" la denomino: F_Bandera =miBandera, que muestra la bandera de un país a partir de la columna I de la hoja 'Fronteras'.



ATENCIÓN: La imagen de arriba es de una versión anterior en la que esas dos formas estaban en la hoja 'Mapa'. En la nueva versión se han movido a la hoja 'Fronteras' el "texto dinámico" (F_Texto) y la "bandera dinámica" (F_Bandera), con el texto sin solapar con la bandera.

IMPORTANTE: El orden de las formas es muy importante para conseguir el efecto de capas de dibujo en el mapa, y que las formas (shapes) sean activadas adecuadamente.

El "puntero" (F_Puntero) debe estar al frente del resto de formas y así pasará por encima de las demás capas del mapa.

La "etiqueta" (F_Etiqueta_Mapa) es la segunda capa, situada en la esquina superior izquierda de la hoja, con lo que se obtienen las coordenadas X e Y en el mapa, escuchando el evento: F_Etiqueta_Mapa_MouseMove

La "imagen dinámica" (F_País) es la tercera capa.

Después de la imagen F_Copyright está ordenada cada "forma de país", intentado que los países pequeños estén por encima de los grandes, y así poder seleccionarlos con seguridad.


Países debajo del Puntero

Para identificar cada país he tenido que renombrar cada "forma de país", por ejemplo Zimbabue, detectando las fronteras de cada país. Es un paso importante que hay que hacer al menos una vez. Es tedioso pero es determinante para conseguir el objetivo del mapa, que es identificar el país que está debajo del "puntero" del ratón.

El cálculo de la distancia a la forma (shape) de un país al "puntero virtual" se hace con la fórmula de la columna "Distancia" de la tabla en la hoja 'Fronteras', solamente si el puntero está dentro de la forma rectangular.

En la imagen solamente aparece la Distancia del "puntero virtual" a Argelia porque es el país que más cerca está en el momento de la captura de la imagen de la hoja.

NOTA: Si hay varios países cerca, se calcula el valor mínimo de la Distancia.

Para detectar las fronteras de un país, el método del "puntero virtual" no es tan preciso como el puntero del ratón sobre una forma (shape), ya que Excel nativamente es capaz de detectar el contorno de la forma del país.

Con el cálculo de la Distancia empeora la precisión, pues es una forma rectangular en la que caben los contornos de otros países, y hasta sus aguas jurisdiccionales, por lo que al pasar el "puntero virtual" por los mares y océanos se puede llegar a detectar qué país es el más cercano...

Para obtener correctamente las coordenadas he incluido un Zoom automático, con el que se ve todo el continente de África. La macro: ZoomRangoMapa se ejecuta si el mapa es demasiado grande y se mueve el puntero por el mapa, o cuando el mapa es muy pequeño y se reinicia el mapa haciendo clic en la celda E19, con lo que se maximiza al tamaño de la hoja 'Mapa'.


Truco para alinear los punteros virtual y real

Cuando me propuse pasar el ratón por encima del mapa, el puntero del ratón se desviaba hacia la izquierda del "puntero virtual", aunque éste se veía centrado horizontalmente con el puntero del ratón. 🙀

Investigué en Google y no encontré nada. 😿

¡Hasta que se me ocurrió la solución! 😻

La desviación se producía porque en la etiqueta que permite escuchar eventos de movimiento del ratón, y que está por encima del mapa, llamada: F_Etiqueta_Mapa, la propiedad MousePointer valía: 0-fmMousePointerDefault

La lista de punteros de ratón está explicada aquí: VBA - MousePointer (propiedad)

El puntero del ratón por defecto es una flecha apuntando hacia arriba a la izquierda pero, cuando se pasa por encima del "puntero virtual" que tiene asignada la macro: ColorearPaís, el puntero es una mano con el dedo índice hacia arriba, como si fuera a hacer clic sobre el "puntero virtual".

Observa en la imagen de arriba ¡que la punta de la flecha y la punta del dedo índice no coinciden horizontalmente!

¡Son unos pocos pixeles pero suficientes para tocar la moral del apuntador! 😾

Aquí está el TRUCO: La solución era usar siempre el mismo puntero del ratón: ¡la mano! 👆

O sea, en F_Etiqueta_Mapa la propiedad MousePointer con valor: 3 - fmMousePointerIBeam

¡Y asunto resuelto! 👏👏👏

Ese valor del MousePointer es la misma mano que se usa para mostrar dónde está el cursor cuando se hace clic con el ratón en un objeto con macro asignada, por lo que ahora ya coinciden las coordenadas de la mano que se mueve por la etiqueta.

Y ahora, cuando saco a pasear al ratón,

¡me sigue como un perrito faldero! 🐕


Consultar datos de África con Power Query

En la hoja 'Datos' se cargan los datos de África, una vez transformados con Power Query.

Los datos de la capital del país; moneda; idioma; forma de gobierno, superficie, población y PIB per cápita se extraen con la consulta a dos páginas Web, la primera para obtener la población actual en tiempo real, y la segunda para obtener el resto de datos:

Poblacion de África 2023 (countrymeters.info)

Anexo:Países de África - Wikipedia, la enciclopedia libre

El problema principal con el que me he topado ha sido que los nombres de los países no son iguales en esas páginas, siendo peor en Wikipedia, pues detrás de los nombres hay caracteres ocultos, por lo que no se pueden combinar las dos consultas a no ser que los nombres sean iguales.

En la columna A de esta imagen Egipto tiene un LARGO de 8 con los caracteres ocultos, cuando su LARGO es 6.

Los caracteres sobrantes son: Unicode 8203 (hexadecimal: 200B) 

Es un espacio de ancho cero que mete la Wikipedia, ¿con qué motivo?

Este carácter Unicode detrás de los nombres de los países impedía combinar las dos consultas, una a la Wikipedia y otra a CountryMeters, pues no coinciden los nombres de los países con los espacios ocultos de ancho cero.

Este es el código para quitar ese carácter Unicode en el último PASO APLICADO a la consulta en Power Query: Datos África

Esto demuestra que los caracteres sin importancia son los que más guerra dan, pues son difíciles de limpiar. La limpieza proporcionada por defecto por Power Query no elimina ciertos caracteres Unicode.

En versiones antiguas de Excel el mapa funciona aunque no actualiza los datos si no está instalado el complemento de Power Query, que se puede descargar aquí:

Download Power Query from Official Microsoft Download Center


Videotutorial del mapa de África

Este videotutorial lo hice con una versión anterior, que aún no cargaba datos de los países con Power Query, pero creo que seguirá sirviendo para explicar su funcionamiento.

Selecciona los subtítulos en tu idioma para entender el vídeo.


Descarga el mapa de África

Este mapa ha sido probado en versiones de Excel 2010, 2016, 2021 y Excel para Microsoft 365. Si me das feedback con los bugs que encuentres, y que seguro que se me han escapado, igual mejora el mapa.

Descarga la versión 9.6 desde uno de estos enlaces:

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.

Si aparece una ventana para elegir el tipo de acceso, selecciona el modo Anónimo.

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.

AVISO: Si se desprotege la hoja 'Mapa' ¡no se debe volver a proteger manualmente!, ya que este mapa se ha diseñado pensando en protegerlo totalmente del usuario, sin estar protegido de las macros, con esta instrucción:

Sheets("Mapa").Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, UserInterfaceOnly:=True

Este último parámetro, que protege la hoja únicamente del usuario, es imposible de poner si se protegen las hojas manualmente.

Se ha protegido el mapa así para que las imágenes (shapes) de los países no puedan ser modificadas ni movidas por el usuario final y tampoco puedan ser cambiadas las formas del "puntero virtual" ni las formas que comienzan por F_ (abreviatura de Formas).

ATENCIÓN: Se puede modificar este libro de Excel respetando esta licencia:

Creative Commons — Atribución-NoComercial-CompartirIgual 3.0 No portada — CC BY-NC-SA 3.0


Zoom al mapa de África

A partir de la versión 9.5 he introducido una interesante mejora para ver el detalle del mapa haciendo Zoom.

Con el zoom puedo aumentar el detalle del mapa y seguir pasando el "puntero" por encima de los países, sin necesidad de maximizar el mapa, y permitiendo el desplazamiento (scroll) horizontal y vertical del mapa.

Para hacer zoom en Excel con el ratón usa la rueda del ratón. Presiona la tecla Control mientras giras la rueda hacia adelante o hacia atrás para ampliar o disminuir el zoom respectivamente.


Pronto publicaré un mapa completo del mundo con todas las funciones y características que voy publicando estas últimas semanas aquí:

Mapa Mundial con Power Query

🔝To translate this blog post to your language, select it in the top left Google box.


Para situarnos en nuestro Planeta Tierra no hay nada como un mapamundi en dos dimensiones.

Y si indica cuántas armas nucleares hay en cada país del mundo, ¡mejor que mejor!

Que el mundo esté en constante estado de guerra no importa, ¿verdad?

¡Lo que importa es si están en guerra los países con armas nucleares! ¿verdad?


Descarga del Mapa Mundial

Este mapa incluye datos extraídos con Power Query de cada país: superficie; población; densidad; consumo de gas natural y de energía eléctrica; emisiones de CO2; esperanza de vida; médicos; tasa de fertilidad; fuerzas armadas; armas nucleares y PIB.

Descarga el mapa v1.1 desde cualquiera de estos enlaces:

La plantilla está protegida sin contraseña, así se protege de los usuarios y a la vez se puede estudiar y analizar este mapa europeo.

Abre la plantilla con alguna versión reciente de Excel, habilita la edición y el contenido para habilitar la conexión de datos externos. Aparecerá un mapa europeo sin datos por defecto, para intentar no violar ninguna licencia de copyright...

AVISO: Para actualizar los datos del mapa por primera vez, y también cuando se quieran volver a actualizar, se debe hacer desde el menú: Datos > Actualizar todo

Al actualizar todo, se consultan los datos de información geográfica con conexiones en Power Query a la Web. La descarga de los datos se hace bajo la responsabilidad del usuario que actualiza todo e inicia la conexión con los orígenes de datos de varias páginas Web...

Si ves el cuadro de diálogo Acceso a contenido web, selecciona la dirección URL correcta, la autenticación anónima y haz clic en el botón Conectar.


Lista de países del mundo

El archivo descargado es mucho más elaborado que el ejercicio que propongo para aprender a extraer, transformar y cargar una lista de países y sus continentes. Considérese esta explicación como un minitutorial de uso de Power Query.

Lo primero que hay que hacer es obtener la lista de países del mundo, por ejemplo desde la siguiente página de Wikipedia:

Anexo:Países - Wikipedia, la enciclopedia libre

Recomiendo buscar la página en el idioma instalado de Office, en este caso en Español.

Para este ejercicio hace falta una versión reciente de Excel, como Excel 2019, Excel 2021 o Excel para Microsoft 365.

Se abre una hoja en blanco y se hace clic en el menú: Datos > De la web

En Básico, se introduce la Dirección URL: https://es.wikipedia.org/wiki/Anexo:Países

y se presiona el botón: Aceptar, abriendo la pantalla del Navegador.

Se marca: Seleccionar varios elementos

Se chequean las tablas a extraer, por ejemplo:

  • Autónomos
  • Estados miembros y observadores de la ONU

Aparece la vista de cada tabla seleccionada y se presiona el botón: Transformar datos

Con lo que se abre la pantalla del Editor de Power Query y se selecciona la primera consulta: Autónomos


Los 3 primeros PASOS APLICADOS se generan automáticamente:

En la Cinta de opciones del menú Inicio, en la sección: Transformar, elegir: Usar la primera fila como encabezado

Se han creado automáticamente 2 PASOS APLICADOS más: Encabezados promovidos y Tipo cambiado1, con los que la cabecera es el nombre correcto de las columnas.

Para este ejercicio solamente nos interesan dos columnas que se deben seleccionar manteniendo pulsada la tecla <Control>: Nombre común y Continente

Y se hace clic en: Quitar otras columnas, con lo que únicamente quedan dos columnas:

Se aplican los mismos pasos para la otra consulta de Estados miembros..., resultando así:

En la sección Combinar, hay que Anexar consultas para crear una nueva, con los países de las dos tablas:

Aparece la pantalla para Anexar.

En este caso se marca: Dos tablas.

Si hubiera más tablas se marcaría: Tres o más tablas

Se seleccionan la primera y segunda tabla en los desplegables y se presiona el botón: Aceptar

Creando la consulta: Anexar1, con los datos de las tablas de países.

Se cambia el nombre de la columna: Nombre común por País y el nombre de la consulta Anexar1 por Países

Se presiona el botón: Cerrar y cargar, con lo que se crea una hoja por cada una de las consultas.

Se deben eliminar todas las hojas excepto la hoja 'Países':

A la derecha aparecen las 3 consultas, siendo del tipo: Solo conexión, las consultas de las tablas extraídas de la Web, y en la consulta Países se cargaron 202 filas, una por cada país y su continente.


Países con armas nucleares

Además de la lista de países y sus continentes hace falta un datos más, la lista de países con armas nucleares, básicamente con bombas atómicas con sus misiles y ojivas nucleares...

En esta página están los datos en español:

Países con armas nucleares - Wikipedia, la enciclopedia libre

Pero falta la tabla de países que tienen instaladas armas nucleares de EE. UU., por lo que la consulta se hará desde la página en inglés (seguramente estará más actualizada que la página en español):

List of states with nuclear weapons - Wikipedia

Comenzaremos haciendo clic en el menú: Datos > De la web, e introduciendo la Dirección URL:  https://en.wikipedia.org/wiki/List_of_states_with_nuclear_weapons

Al presionar el botón: Aceptar, abriendo la pantalla del Navegador.

Se marca: Seleccionar varios elementos.

Se buscan las tablas necesarias para las consultas, resultando ser dos tablas las que tienen los datos buscados:

  • Tabla2: con los países que disponen de ojivas nucleares.
  • U.S. nuclear weapons in host countries: con los países que tienen ojivas nucleares de Estados Unidos.

Al presionar el botón: Transformar datos, se abre el Editor de Power Query con dos consultas nuevas, una por cada tabla seleccionada anteriormente.

Se cambia el nombre de la consulta Tabla2 por: Nuclear weapons y se quitan las 2 primeras filas superiores, que son parte de la cabecera de las columnas.

Manteniendo presionada la tecla <Control>, se seleccionan las columnas: Country y Warheads Total, y se selecciona: Quitar otras columnas

Y se cambia el nombre de la segunda columna por: Warheads, siendo detectados sus valores como texto con una coma como el separador de miles en inglés.

Por lo que debe ser sustituida la coma por nada y presionar el botón: Aceptar

En la sección Transformar, se selecciona: Detectar tipos de datos

Con lo que la columna se transforma en numérica.

Se hace lo mismo con la otra consulta, resultando estas dos columnas:

Se observa que Italia aparece dos veces, pues tiene ojivas en dos bases aéreas distintas, por lo que habrá que sumar los datos de Italia.

Se selecciona la columna Country y se elige: Agrupar por

Como Nuevo nombre de columna se escribe: Warheads, como Operación: Suma y como Columna: Warheads, como se ve en la imagen:

Al presionar el botón: Aceptar, se han conseguido agrupar los datos de Italia, sumándolos.

Ahora únicamente falta anexar estas dos consultas, como se hizo antes con los países.

En la sección Combinar, hay que Anexar consultas para crear una nueva.

Y después de cambiar el nombre de la consulta Anexar1 por Warheads, el resultado es el siguiente:

Se presiona el botón: Cerrar y cargar, con lo que se crea una hoja por cada una de las 3 nuevas consultas.

Se deben eliminar las hojas con Nuclear weapons, con lo que serán del tipo Sólo conexión, excepto la hoja 'Warheads' en la que se cargaron 15 filas, aunque hay una fila que se me olvidó quitar con un país denominado Total, que no influirá en los datos del mapa...


Datos para crear el mapa mundial

Ya tenemos dos tablas con los datos del mapa mundial:

  • Países: con la lista de todos los países del mundo y sus continentes, en lengua española.
  • Warheads: con la lista de países con armas nucleares, en lengua inglesa.

Hay que incluir una columna denominada País en la tabla Warheads con el país en lengua española.

En la hoja 'Países' hay que incluir una columna con las Armas nucleares, obtenidas mediante la fórmula:

=SI.ERROR(INDICE(Warheads[Warheads];COINCIDIR([@País];Warheads[País];0));NOD())

En esa tabla se seleccionan las columnas: País y Armas nucleares, y se inserta un Mapa coroplético:

Con lo que se obtiene un mapa que se corta y pega en una hoja nueva con el nombre: Mapa

Observa que la gama de colores va de un azul intenso para los países con más armas nucleares, hasta un azul muy claro para los que tienen menos armas. En color neutro aparecen los países sin armas nucleares, cosa que no quiere decir que en ellos no pueda explotar una ojiva nuclear, ¿queda claro?

Para darle interactividad al mapa se le pueden añadir un par de segmentaciones de datos: Continente y País.

Seleccionamos cualquier celda de la tabla en la hoja 'Países' y en Diseño de tabla, se elige: Insertar segmentación de datos, marcando las columnas: País y Continente, y presionando el botón: Aceptar

Se crean las dos segmentaciones de datos, que hay que cortar y pegar en la hoja 'Mapa'.

En esta imagen se ve el mapa filtrado por Europa en la segmentación de datos por Continente, apareciendo la lista de países europeos en la segmentación de datos por País.

Se han establecido las Opciones de serie en el Formato de serie de datos así:

  • Proyección del mapa: Automático, aunque prefiero seleccionar: Miller, para que el mapa sea uniforme.
  • Área de mapa: Solo regiones con datos, para que solamente se vean los continentes o países seleccionados mediante las segmentaciones de datos.
  • Etiquetas de mapa: Mostar todo, para que en el mapa se vean los nombres de los países, aunque no se muestren nada más que los que quepan...

También he agregado etiquetas de datos, para que se vea debajo de cada nombre de país, el número de armas nucleares...

Y hasta aquí la explicación de cómo hacer un Mapa Mundial con datos obtenidos con Power Query.


Vídeo con el Mapa Mundial

Si eres de los que no te gusta leer y prefieres seguir las explicaciones en vídeo, aquí tienes el minitutorial de cómo crear un Mapa Mundial con los países en los que hay armas nucleares.


Para finalizar:

  • Si te gustó este artículo, podrías decírmelo.
  • Si encontraste una errata, podrías decírmelo.
  • Si no te gustó este artículo, dímelo y dejaré de publicar artículos como éste.

Mi lista de blogs