Traducir el blog
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):
- Mantener las formas visibles sin parpadeo | El foro Excel de TodoExcel.com
- Puntero al mapa de África | El foro Excel de TodoExcel.com
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.
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.
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'.
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! 🐕
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:
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
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.
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:
- Microsoft OneDrive: Estudiar África - PW9.xlsm
- Sites Google Drive: Estudiar África - PW9.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.
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
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í:
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
-
-
-
-
-
-
-
-
-
2 Response to "Puntero al mapa de África"
Descarga la versión 9.3 para corregir la aparición de un 0 en lugar del nombre oficial de Burkina Faso. Y para que los datos numéricos sean sin decimales y con el separador de miles.
Con la versión 9.5 he introducido una interesante mejora para ver el detalle del mapa haciendo Zoom para ver el detalle de los países y seguir pasando el "puntero" por encima del mapa. Descarga la nueva versión y pruébala.
Leave A Reply
Indícame las erratas que encuentres y qué es lo que te gustaría ver en los próximos artículos.