a recitar
los reyes godos: Ataúlfo, Sigerico, Walia, Teodorico I, ...
Mi carrera como ingeniero
Todas estas son listas ordenadas como la que he preparado en mi primera semana
de ingeniero autojubilado, para simular una escala de tiempos
autodinámica y para recordar en el futuro mi carrera profesional en diversas
ramas de la ingeniería:
Ingeniero electrónico diseñando un prototipo de terminal
inteligente, entregado como ejercicio práctico de mi proyecto fin de
carrera, y que fue dirigido por el gran profesor de electrónica
D. Tomás Pollán Santamaría, q.e.p.d. Nunca te olvidaré MAESTRO.
Ingeniero industrial en varias compañías informáticas y
departamentos de I+D.
Ingeniero de automatización programando automátas
programables.
Ingeniero de software para diseñar equipos electrónicos basados en
microcontrolador.
Ingeniero de telecomunicaciones en el departamento de I+D de
Electrónica Aragonesa en colaboración con Telefónica I+D.
Ingeniero de sistemas en los departamentos de I+D de Amper y
Siemens.
Ingeniero de calidad en un departamento de I+D.
Ingeniero informático desarrollando aplicaciones cliente-servidor
como analista-programador.
Ingeniero TIC como consultor de Tecnologías de la Información
y las Comunicaciones.
Ingeniero de pruebas de la calidad del software.
Ingeniero de datos para Indra, Alten, Gas Natural Fenosa, IBM y
BBVA.
Ingeniero de inteligencia de negocio (BI -
Business Intelligence) con herramientas Power.
Ingeniero multimedia desarrollando en Excel múltiples
Interfaces Gráficos de Usuario
- IGU (GUI - Graphical User Interface) en mi propio blog. Sí, este que
estás leyendo ahora mismo:
#ExcelPedroWave
La primera es la única formación reglada en ingeniería que he recibido en mi
vida profesional, y de eso hace ya más de 40 años y, curiosamente, es la única
ingeniería en la que no tengo experiencia. En las demás ingenierías mi
formación ha sido vocacional, ocupacional, continua, permanente y autodidacta,
y siempre enfocado en obtener los mejores resultados para mi empresa y para
mis clientes, y en cumplir los
objetivos SMART: específicos; medibles; alcanzables; relevantes y limitados en el
tiempo.
Mi carrera profesional
Con esta publicación trato de recordar mi propia carrera profesional en un
gráfico en Excel, ¡cómo no!, que muestre los años, las fechas de inicio y fin
y los días de cada hito de mi carrera, durante los últimos 45 años,
desglosados y filtrados por campos como: Actividad; Cliente; Empresa;
Herramientas; Logros; Lugar; Puesto; Sector y Tareas, como se puede ver en
esta imagen animada:
Para crearlo han hecho falta 4 hojas:
Hoja 'DAT_CARRERA': Con los datos de la carrera en una tabla que se
puede editar para introducir tus propios datos profesionales. Antes hay
que desproteger la hoja pues está protegida sin contraseña. Observa que la
fecha final de un hito está marcada en color de fondo amarillo, con la
función =Hoy() pues es el hito actual que aún no ha acabado, seguir
publicando en este blog...
Hoja 'TD_CARRERA': Con dos tablas dinámicas, una para los campos de
cada hito y otra con los datos de la carrera. Las segmentaciones de datos
de la hoja 'INF_CARRERA' están conectadas con estas tablas dinámicas.
Hoja 'TAB_CARRERA': Con la tabla filtrada asociada al gráfico de
barras de la hoja 'INF_CARRERA', y con datos de formato de año y fechas, y
con el año mínimo y máximo a mostrar en el gráfico.
Hoja 'INF_CARRERA': Con el gráfico de la carrera y las
segmentaciones de datos que pueden ser filtradas individualmente o
borrados totalmente sus filtros. Cuando por ejemplo se selecciona en la
segmentación principal el campo "Empresa", aparece la segmentación de
datos secundaria de la "Empresa", para permitir filtrar por empresa. Todos
los filtros que se hagan en una segmentación secundaria se mantienen
mientras no se borre el filtro de ese campo determinado. Borrando el
filtro de la segmentación principal, se borran todos los filtros de las
segmentaciones secundarias y la segmentación de los años de inicio.
Descarga de la plantilla
Descarga la plantilla totalmente gratuita, con las macros visibles y las hojas
protegidas sin contraseña, desde Google (con el botón "Excel Download") o
desde el enlace a Microsoft OneDrive:
Se ha pretendido simular una escala de tiempos autodinámica, para lo que hacen
falta unas cuantas macros VBA:
Evento Worksheet_SelectionChange en la hoja 'INF_CARRERA'
que llama a las macros: ShowHideInitialDate y ShowHideDays, para mostrar u
ocultar las fechas y días de cada hito.
Evento Worksheet_Change en la hoja 'TD_CARRERA' que llama a
las macros: FormatCareerChart y ChangeField, para formater el gráfico y
cambiar el campo seleccionado.
Evento Worksheet_Change en la hoja 'DAT_CARRERA' que llama a
la macro: RefrehPivotTable para refrescar la caché de la tabla dinámica de
la hoja 'TD_CARRERA' con los datos de la carrera.
Módulo ModCareer con las macros que autodinamizan el gráfico con la
carrera y que están suficientemente autoexplicados en los comentarios del
código. La función DATE_FORMAT() permite obtener el formato local
de las fechas y los años del gráfico.
Agradecimientos
No puedo dejar de agradecer el apoyo y la ayuda que me han ofrecido
desinteresadamente todos mis exprofesores y excatedráticos durante 5 años de
estudios de ingeniería y todos mis excolegas, excompañeros, excolaboradores,
exjefes, exdirectores durante los últimos 40 años de carrera profesional, para
conseguir el objetivo de ser un
ingeniero autojubilado, con muchas automatizaciones por hacer, muchas
rutas que recorrer en autocaravana, como
nómada digital, y muchos artículos que escribir en este blog de autoayuda y autoaprendizaje
de Excel.
Cuando el presupuesto para hacer un vídeo es inmenso, sin ninguna duda se pueden crear vídeos
de mucha más calidad que los míos, hechos de forma casera en una tableta con Windows 10 y con sólo tres herramientas:
Excel para Microsoft 365: para crear las plantillas de ejemplo.
MS PowerPoint: para crear el contenido del vídeo.
Editor de vídeo de MS Fotos: para montar y grabar el vídeo.
Y si no, que se lo pregunten a Mark Zuckerberg, que en este vídeo presenta su Metaverso en Facebook, hecho con los últimos adelantos tecnológicos:
No voy a hablar de los miles de menús que me comí en los restaurantes de la
capital de España, durante los 9 años que estuve trabajando en varias oficinas
de Madrid.
Voy a hablar de cómo hacer menús interactivos usando la
segmentación de datos para filtrar datos de tablas dinámicas (Slicers
en inglés), con un ejemplo de un tablero de ajedrez interactivo.
He intentado que los menús sean intuitivos, vistosos, amigables y fáciles de
usar y de aprender, según el principio de acción-reacción, y procurando
mejorar la interfaz del usuario (User Interface - UI) y la experiencia del usuario (User eXperience - UX). Aunque no he programado la posiblidad de deshacer ninguna de las acciones
con los menús, siempre se puede obtener cualquier posición de las piezas de
ajedrez en el tablero o incluso borrarlas todas y comenzar de nuevo.
En esta entrada del blog aprenderemos a:
Mantener dos tablas dinámicas: una con un único filtro para el menú y otra
con un filtro para los submenús.
Mantener dos tablas normales: una para el menú y otra para los submenús.
Mantener una tabla auxiliar para los submenús con su posición, número de
filas y de columnas.
Modificar la segmentación de datos del menú.
Modificar la segmentación de datos de los submenús.
Analizar las macros de Excel, en lenguaje VBA, que interactúan con los
menús y submenús.
Representar un tablero de ajedrez interactivo dentro de un rango de celdas
de una hoja de cálculo.
Esta es la apariencia que tiene el menú principal y los diferente subménus
gráficos, con un ejemplo de cómo animar un tablero de ajedrez en Excel.
En esta imagen gif animada se muestra un menú principal, numerado del 1
al 7, diseñado con una segmentación de datos. Los 7 submenús están diseñados
con una única segmentación de datos con un formato de filas y columnas
diferente para cada uno de los submenús. Los submenús se despliegan a la
altura de su correspondiente entrada desde el menú principal. Algunos submenús
son de texto y otros son gráficos, como las piezas del ajedrez o sus posibles
movimientos en vertical, horizontal o diagonal.
Descarga de la plantilla
Descarga la plantilla totalmente gratuita, con las macros visibles y las hojas
protegidas sin contraseña, desde Google (con el botón "Excel Download") o
desde el enlace a Microsoft OneDrive:
Para crear los menús hace falta una hoja auxiliar 'TD_Menu' en la que
se han insertado 3 tablas normales, un rango para los submenús y una celda
auxiliar:
TablaMenu: Para el menú principal en el rango E4:E11 con la lista
de submenús numerados.
TablaSubmenus: Para los submenús en el rango H14:N16 con una
columna por cada submenú, con los valores posibles de cada submenú.
TablaSubmenu: Tabla auxiliar con los valores del submenú
seleccionado en el menú principal.
Rango de parametrización de cada submenú: Rango F26:N29 con el
tope, filas y columnas de la segmentación de datos que sirven para
personalizar cada submenú.
Celda auxiliar: En la celda E2 se calcula el número de submenú
elegido en el menú principal.
La tabla para el menú principal se puede personalizar para cambiarlo según las
necesidades del usuario final. En este ejemplo, con traducción simultánea a
varios idiomas, los valores del menú principal se encuentran en la hoja
'Idiomas', desde donde se deben cambiar:
En la columna de la izquierda se muestra la tabla con el submenú elegido y las
demás columnas son de la tabla de submenús, que se pueden personalizar para
formar otro tipo de submenús. Hay que tener en cuenta que, para la traducción
a varios idiomas, los valores del submenú 4 (Iniciar; Borrar) y del submenú 7
(SI; NO) están en la tabla de la hoja 'Idiomas':
En esta imagen se muestra el rango de parametrización de la segmentación de
datos de cada submenú. Hay que prestar atención que en la fila de "Columnas"
el valor del número de columnas del submenú 6 es fijo:
Tablas dinámicas para el menú y los submenús
En la hoja auxiliar 'TD_Menu' se han insertado dos tablas dinámicas:
TD_Menu: Para el menú principal en el rango B4:C4 con origen de
datos en la TablaMenu y sólo con un filtro para el campo "Menu".
TD_Submenu: Para el submenú en el rango B14:C14 con origen de
datos en la TablaSubmenu y sólo con un filtro para el campo
"Submenu".
Segmentación de datos del menú principal
La segmentación de datos del menú principal está conectada con la tabla
dinámica TD_Menu y está en la hoja 'Tablero'.
La configuración de la segmentación de datos es la siguiente:
Mostrar encabezado en estado sin chequear.
Se ha creado un nuevo estilo de segmentación de datos sin bordes.
Segmentación de datos de los submenús
La segmentación de datos de los submenús está conectada con la tabla dinámica
TD_Submenu y está en la hoja
'Tablero'.
Se basa en la misma configuración de la segmentación de datos del menú
principal, sin mostrar encabezado ni bordes.
La principal ventaja de está técnica para diseñar menús y submenús es que la
misma segmentación de datos de submenús sirve para mostrar cada uno de los
submenús, simplemente variando su posición, su número de filas y columnas y
los valores del submenú seleccionado con el menú principal, gracias a las
tablas de la hoja 'TD_Menu'
que ya he descrito más arriba.
Con una única segmentación de datos se configuran varios submenús, por
ejemplo:
Se puede observar que algunos de ellos están formados por caracteres gráficos,
como las piezas de ajedrez o las flechas de movimiento. Para ordenar las
flechas de movimiento ha hecho falta definir, en las opciones avanzadas de
Excel, una nueva lista personalizada:
Lo importante es que los submenús cambian dinámicamente cuando se cambia la
selección del submenú desde el menú principal y se coloca a la altura del
submenú elegido. Lo mejor es verlo en el siguiente vídeo en acción :
Al seleccionar en el menú principal la opción "1. Fuente" aparece el submenú
con la lista de las dos fuentes programadas:
Segoe UI Symbol
Times New Roman
Las figuras de las piezas del ajedrez creo que se llaman trebejos. De la hoja
'Ajedrez' se obtiene la posición inicial de las piezas en una partida
de ajedrez y ejemplos de las dos fuentes que pintan las piezas:
Macros del menú y los submenús
Cuando se selecciona un menú o un submenú se ejecutan las macros Excel,
escritas en lenguaje VBA, que permiten la interacción con el tablero de
ajedrez del ejemplo propuesto.
Para explicar e interpretar las macros de esta aplicación es preciso conocer
los nombres definidos que son los que aparecen en el menú:
Fórmulas --> Administrador de nombres
Nombres definidos más relevantes:
Rango_TD_Submenu: Es el origen de datos de la tabla dinámica
TD_Submenu, creado mediante las funciones INDICE() y CONTAR.SI(),
esta última con el argumento "?*" con comodines para contar
solamente las filas con datos.
Rango_Tabla_Submenu: Con el rango completo de la tabla
"TablaSubmenu", que se usa en el nombre definido anteriormente:
Rango_TD_Submenu
El resto de nombres definidos son rangos o celdas para que sea más clara y
fácil su referencia en las fórmulas y macros.
Módulos de la aplicación
Hoja 'Tablero': Se produce el evento
SelectionChange cuando cambia la celda seleccionada de la hoja y
que representa un escaque del tablero de ajedrez. Se ejecuta la
macro GetSubmenu únicamente cuando se ha seleccionado en el
menú principal el submenú 2 con las piezas.
Hoja 'TD_Menu': Se produce el evento Change cuando
cambia el valor de la celda. Si cambia el valor del filtro de la tabla
dinámica TD_Menu se ejecuta la macro ChangeSubmenu. Si
cambia el valor del filtro de la tabla dinámica TD_Submenu se
ejecuta la macro ActionSubmenu.
Hoja 'ThisWorkbook': Los eventos
Open; BeforeSave y BeforeClose lanzan la macro para proteger las
hojas ProtectSheets. Además el evento Open oculta todos
los menús y barras de Excel llamando a la macro VisibleExcel.
Módulo modChangeMenu: Contiene las macros necesarias para
interactuar con el menú principal y con los submenús:
ChangeSubmenu: Realiza las acciones que permiten el cambio de un
submenú desde el menú principal.
GetSubmenu: Obtiene el último valor del submenú seleccionado, por
lo que hay que modificar el número de casos si se cambian los submenús.
ActionSubmenu: Ejecuta las acciones de un determinado submenú,
por lo que hay que modificar el número de casos si se cambian los
submenús.
Select2Slicer: Llama 2 veces a la
macro SelectSlicerItem, pues devuelve un error la primera
vez. A tener en cuenta para una mejora.
SelectSlicerItem: Selecciona un único valor de la segmentación de
datos.
TopMenu: Obtiene el tope de la posición de la segmentación de
datos del menú principal.
RowHeightMenu: Obtiene el alto de la fila de la segmentación de
datos del menú principal.
SelectFirstValuePivotTable: Cuando se seleccionan múltiples
valores en una segmentación de datos, obtiene solamente el primer valor.
RefreshAll: Refresca la caché de las 2 tablas dinámicas y las
fórmulas de todo el libro de trabajo.
Módulo modChangeChessboard: Contiene las macros necesarias
para interactuar con el tablero de ajedrez:
ChangeChessboard: Borra todas las piezas del tablero o inicializa
el tablero con la posición inicial de las piezas en una partida de
ajedrez.
IniChessboard: inicializa el tablero con la posición inicial de
las piezas en una partida de ajedrez.
DeleteChessboard: Borra todas las piezas del tablero.
ChangeFont: Cambia la fuente de caracteres de las piezas de
ajedrez.
ChangePiece: Cambia la pieza de ajedrez en una de las celdas que
representa un escaque.
MovePiece: Mueve una pieza de ajedrez a otro escaque del tablero.
Módulo modChangeProtect: Macros para proteger las hojas:
ProtectSheets: Protege las hojas sin contraseña.
UnprotectSheets: Desprotege las hojas.
ProtectOneSheet: Protege una hoja de los usuarios pero no de las
macros, gracias al argumento: UserInterfaceOnly:=True
UnprotectOneSheet: Desprotege una hoja.
Módulo modHideExcel: Macros para ocultar o mostrar los menús y
barras propias de Excel. Se puede ocultar todo excepto el título de la
aplicacion. Como este módulo es un extra de ejemplo, no voy a explicar
cada una de las macros. Quien tenga ganas de estudiarlas que las analice
ya que son muy claras y simples, como dice el conocido bloguero
Robert Mundigl en su blog Clearly and Simply, del que tanto estoy aprendiendo y que recomiendo desde estas líneas. Si
has llegado a leer hasta aquí, lo que si recomiendo es optar por no
ocultar Excel desde el menú, ya que quitar la ocultación manualmente es un
trabajo arduo.
Más juegos de ajedrez en este blog
Desde que uso Excel me gusta escribir publicaciones en el blog sobre ajedrez,
aquí tienes unos cuantos ejemplos que espero que te gusten y que hagas
comentarios sobre ellos en alguna de las entradas del blog:
Cuando escriba el próximo artículo ya estaré felizmente jubilado y mi idea es
construir próximamente un tablero con la historia de los 40 años de
mi carrera profesional (enlace aquí), en un storyboard dinámico como el que aparece en el siguiente enlace,
pero con otra técnica:
A practical Example for Dynamic Storyboards
Si detectas alguna traducción incorrecta al cambiar de idioma, dímelo en un
comentario o modifica tú mismo la tabla con los idiomas, a partir de la
columna C de la hoja 'Idiomas', donde puedes añadir más columnas si quieres
más idiomas...
32-Bit vs 64-Bit Excel: Which Is Better?
-
32-bit vs 64-bit Excel—which is better? It all comes down to the need for
memory, data size, and compatibility. Not sure which version of Microsoft
Excel 3...
Tablas Dinámicas en Excel y Google Sheets
-
Las tablas dinámicas son una de las herramientas más poderosas en una hoja
de cálculo, esenciales para cualquier usuario que […]
The post Tablas Dinámica...
Debra’s Excel News–November 2024
-
Fix pivot table errors, show images in cells, and more, in this month’s
Excel news. Visit my Excel website for more tips, tutorials and videos, and
check t...
Accountex 2024 Excel a Power BI
-
En Accountex 2024 el jueves 7 noviembre presenté: «BI transición de Excel a
Power BI» (Sesión coordinada por el Consejo General de Economistas)Esta
sesió...
NADA tras la DANA
-
🔝*To translate this blog post to your language, select it in the top left
Google box. *
NADA a favor de la DANA
Justo después de las inundaciones d...
Installing 3DFrame-py
-
As mentioned in the previous post, the installation process for the
3DFrame-py spreadsheet has changed with the new version. Also there have
been some sign...
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 ...
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...
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...
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 ...
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....
-
Aprendiendo Unreal Engine 5. ¿Por dónde empiezo?
Desde la presentación de la Comunidad Oficial de desarrolladores de Unreal
Engine de Málaga, he recibido m...
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’...
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...
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...
London Excel Meetup Workbooks
-
The workbooks used in my presentation on “Analytical and Interactive
Dashboards in Excel” at the London Excel Meetup, September 3, 2020
Mis metas son seguir superando nuevos retos en Excel y compartirlos en mi blog, para sacarle todo el poder a esta excelente herramienta multiusos, tan usada y a la vez tan incomprendida, para así poder mejorar nuestros conocimientos de Excel.