Traducir el blog

Problema 2: Errores en la nube de OneDrive

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


Este año ha comenzado con dos problemas detectados en Microsoft OneDrive, y que afectan directamente a mi blog de Excel:

En este artículo hablaré del segundo problema, que me impide crear código personalizado para insertar archivos Excel en mi blog, sin la posibilidad de interactuar con ellos.

Lo que es un grave problema, pues suelo insertar Excel en mi blog como herramienta didáctica de lo que se puede hacer con Excel, sobre todo dirigido a los lectores de mi blog que aún no han instalado Excel en sus equipos, para que se animen a instalar esta potente herramienta multiusos y para que la usen en su día a día.

En esta imagen animada se muestras los dos problemas con OneDrive:


Vídeo con los problemas de OneDrive

En este vídeo explico los problemas detectados en Microsoft OneDrive:


Problema 2: Errores en la nube de OneDrive

El problema 2 impide compartir archivos Excel desde la nube de OneDrive, si se han insertado de forma personalizada, que es lo habitual en mi blog.

Dentro de cualquier artículo, en el que hay un Excel insertado, avisa que:

No se puede cargar este elemento ahora.


Si con mi usuario de Microsoft 365 abro el enlace: No se puede cargar este elemento ahora. No abre ningún archivo, sino que abre la carpeta de Inicio de OneDrive.

Esto solamente me ocurre desde hace dos meses con mi usuario de la suscripción a Microsoft 365. No me ocurre cuando no tengo abierta la sesión con mi usuario, tampoco cuando uso otro usuario, o cuando abro el blog en un navegador dentro de una ventana de incógnito o en privado.

Este caso no es un problema para los visitantes de mi blog, pues ven el elemento insertado dentro de los artículos del blog, por ejemplo el Excel incrustado con el que pueden interactuar.


Pero este problema afecta sobre todo a la manera de insertar los archivos Excel en mi blog, lo que si es un problema para mis lectores, ya que no me resulta tan fácil seguir escribiendo artículos con archivos Excel incrustados en mi blog...


Error al personalizar la inserción de Excel

En este enlace se explica cómo:

Pero al intentar personalizar la inserción de un archivo Excel en un blog o una página web crea una etiqueta <iframe> errónea.

Si selecciono un archivo Excel para crear el código con el que insertarlo en mi blog, por ejemplo genera este código:

que es válido, pero únicamente sirve para insertar el archivo ¡sin ninguna personalización!

En la imagen hay un enlace para:

Personalizar la forma en que este libro insertado se mostrará a otros usuarios

Haciendo clic en ese enlace, se abre una ventana para personalizar la inserción de un archivo en un blog o en una Web, y ahí se refleja el problema 2 en toda su extensión.

En la imagen de la derecha hay un ejemplo de la ventana para personalizar la inserción del archivo, con la posibilidad de modificar lo siguiente:

  • Qué se mostrará
  • Apariencia
  • Interacción
  • Dimensiones

Lo interesante es poder personalizar la Interacción para:

  • Permitir que los usuarios ordenen y filtren los datos
  • Permitir que los usuarios escriban en las celdas (sus cambios no se guardarán)
  • Comenzar siempre con esta celda seleccionada

Con la personalización seleccionada en la imagen anterior, se genera el siguiente Código para insertar:

PROBLEMA: Este código no hace referencia al archivo Excel, ya que aparece un interrogante como origen (source) del archivo: src="?

Si se quiere Ver en tamaño real, aparece el mensaje: Not Found

Este segundo problema tiene mucha relación con el primer problema detectado, pues los dos problemas ocurren desde hace unos dos meses, y lo que ahora es un interrogante (src="?) antes era un identificador del archivo Excel, que ahora no deja descargar.

Como ejemplo usaré el mismo artículo del primer problema:

En dicho artículo está incrustado el siguiente código, que se generaba antes de ocurrir el segundo problema:

Donde se referenciaba al identificador del archivo: 103723, que ya comenté en el primer artículo:

y la referencia a ese identificador ha desaparecido en el código generado para personalizar la inserción del archivo Exel, con lo que no se puede insertar de forma personalizada en mi blog...


He denunciado el problema al Soporte de Microsoft OneDrive

Hace dos meses denuncié de forma privada este problema al Soporte de Microsoft OneDrive, ¡y aún estoy esperando respuesta!, por lo que lo publico aquí por si alguien del equipo de desarrollo de OneDrive se digna atender este problema...

El viernes volví a communicar el problema y ayer domingo me contactó un miembro del Soporte Técnico de Microsoft OneDrive, pidiendo más pantallazos y una grabación de "mi problema", que comparto aquí:

Cuando me conteste prometo publicar un nuevo artículo sobre los problemas de OneDrive.

Mientras tanto, intentaré crear un código personalizado con la fuente (source - src) correcta, como workaround, como una solución alternativa para poder seguir insertando archivos Excel en mi blog, que creo que pueden seguir siendo útiles para mis lectores como herramienta didáctica.

También he escrito un comentario en la Comunidad de MS OneDrive en inglés, por si lo quieres votar, a ver si Microsoft revierte pronto el error en el código generado al personalizar un archivo insertado:

Esperaré sentado, pues la experiencia me dice que las respuestas de Microsoft se hacen esperar...

Problema 1: Enlaces rotos en OneDrive

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


Este año ha comenzado para mí con dos problemas detectados en Microsoft OneDrive, y que afectan directamente a mi blog de Excel:

En este artículo hablaré del primer problema. Reservo un nuevo artículo para el segundo problema.

Las evidencias de estos dos problemas están en cualquier artículo de este blog en los que aparezca uno de estos avisos, como muestra esta imagen animada:


Estos problemas son muy frustrantes para mí, pues me obligan a reeditar casi todos los artículos de mi blog, que son más de 300, para cambiar los enlaces de descarga desde OneDrive, y para cambiar la forma de insertar archivos desde OneDrive.

¡¡¡ Lo que es un verdadero latazo para cualquier bloguero !!!

Como no tengo ninguna esperanza de que Microsoft los solucione pronto, explicaré estos dos problemas, los pasos que he seguido para denunciar el problema a Microsoft, la solución alternativa (workaround) que me he propuesto para la resolución de cada problema y el plan para resolverlo tan pronto como me sea posible.

Sirva esta publicación como denuncia pública a Microsoft, por si a alguien más le ha pasado lo mismo, ya que aún no he recibido ninguna respuesta de la denuncia privada que puse hace un mes a Microsoft...


Vídeo con los problemas de OneDrive

En este vídeo explico los problemas detectados en Microsoft OneDrive:


Problema 1: Enlaces rotos en OneDrive

Para descargar los archivos Excel, que uso de ejemplo en los artículos de mi blog, hay dos enlaces diferentes según la fecha de publicación del artículo.

En las publicaciones de hace años, la descarga se hace desde Google Drive, con el botón: Excel Download, o desde el enlace a Microsoft OneDrive, por ejemplo desde este artículo:

En las publicaciones recientes, la descarga se hace desde uno de los dos enlaces, por ejemplo desde este artículo:


Los enlaces a Google Drive permiten descargar los archivos sin problemas. ¡Bien hecho Google Drive!

El problema está en los enlaces de descarga desde el enlace a Microsoft OneDrive pues, desde hace un par de meses, no permite la descarga apareciendo este mensaje:

Es posible que este elemento no exista o que ya no esté disponible

Es posible que alguien haya eliminado el elemento, que éste haya caducado o que no dispongas de permiso para verlo. Ponte en contacto con el propietario del elemento si deseas obtener más información.

No se por qué avisa OneDrive que el archivo es posible que no exista o no esté disponible, ¡cuando sigue estando en mi carpeta pública de OneDrive y disponible para su descarga!


¿Cómo descargaba hasta ahora los archivos desde OneDrive?

Vamos a verlo con el artículo del blog más leído últimamente:

Esta es la página web que se llama para descargar el archivo Excel desde OneDrive.

El acceso al archivo de descarga se identifica con un número después del signo de admiración (!). En este caso es el identificador: 103723

Hasta hace un par de meses este enlace era capaz de descargar el archivo:

Pero, como puedes comprobar si pinchas en este enlace, ahora genera el mensaje de aviso comentado más arriba y no se descarga desde OneDrive...


¿Qué problema tiene el enlace de descarga a OneDrive?

El problema es que esos enlaces han funcionado durante casi 15 años hasta que, hace unos dos meses, Microsoft cambió el identificador comentado para que no se pudiera usar para descargar archivos...

Lo que tengo claro es que no puedo denunciar a OneDrive por la rotura de los enlaces, ya que la forma de descargar archivos con dicho identificador no es la tradicional con la que se comparten los enlaces de descarga en OneDrive, que es con un enlace como éste:

Este enlace obliga a descargar manualmente el archivo, además de ser único para cada archivo que se comparte, con lo que hay que generar uno distinto por cada enlace de descarga de cada uno de los más de 300 artículo del blog...


¿Cómo resolver el problema con los enlaces a OneDrive?

La solución pasa por modificar ese enlace, modificando uno a uno todos los artículos del blog, cosa que no voy a hacer, ¡de momento!

No sólo eso, en los nuevos artículos que publique a partir de ahora, solamente se podrá descargar de Google Drive, por si Microsoft OneDrive algún día vuelve a permitir enlaces con el identificador comentado antes...


Buscador de artículos del blog afectado por este mismo problema

¡Vaya casualidad! Hoy hace justo dos años, publiqué un Buscador de mis artículos de Excel que está desactualizado, pero que permitía la descarga directa de cualquier archivo del blog desde este archivo Excel:

Se hacía desde la columna J, que contenía el identificador del Enlace a la descarga del archivo.

Como la técnica empleada es la misma que el problema que denuncio ahora, pues uso el identificador de cada archivo, también se han roto las descargas de mi buscador.

Lo que me obligaría a editar el buscador, copiando uno a uno todos los enlaces de descarga rotos, ¡lo que no es uno de mis propósitos para este año!


Problema 2: Errores en la nube de OneDrive

El segundo problema, derivado del actual comportamiento del identificador de los archivos públicos en OneDrive, da para escribir otro artículo:

¡Y habrá más!

Un juego del Rabino en Excel

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


NUEVA REVISIÓN: A 6 de febrero de 2025, he subido una nueva revisión del juego con algunas correcciones de problemas y mejoras en el motor del juego.


AVISO: En la red hay muchos juegos de cartas, escritos por ejemplo en Java o Python, pero al intentar descargarlos mi antivirus detecta amenazas en los ejecutables y los pone en cuarentena, pues son un riesgo para mi equipo.

Pero esto no te pasará si descargas ¡¡¡ mi juego del Rabino en Excel !!!


Un juego del Rabino en Excel

Esta es la entrega final de una serie de artículos con los que he intentado diseñar en Excel un juego de cartas con una variante especial del Rabino.

Ya me dirás si lo he conseguido.

La variante que he programado es el Rabino que me enseñó mi padre cuando yo era un niño, y es el Rabino que juego muchas tardes con mi esposa. A los dos les dedico este entretenido juego.😘

En este enlace encontrarás todos los juegos de cartas que he programado en Excel:

En esta entrega final explicaré:

♥️  Cómo ganar una serie de partidas.

♠️  Qué datos se guardan de cada partida.

♦️  Cómo ver los resultados de las partidas.

♣️  Qué falta por hacer para mejorar este juego.

La nueva funcionalidad de esta última entrega es poder jugar una serie de partidas, hasta que un jugador sobrepase los 100 puntos, con lo que perderá la serie de partidas, o hasta que un jugador cierre con una Escalera Real, en cuyo caso ganará la serie de partidas del Rabino.

En la imagen se muestran los resultados de las últimas partidas, y cuántas series de partidas ha ganado cada jugador.

¡Vaya!

¡El Rabino en Excel me lleva ventaja!

¡Tengo que seguir retándolo a jugar más partidas!


Vídeo del juego del Rabino

En este vídeo verás la estadística de puntos de algunas de las muchas partidas que he jugado contra el Rabino en Excel, para así probar el motor del juego.


Cómo ganar una serie de partidas

Esta variante del Rabino no la he diseñado en plan profesional sino en plan didáctico, aunque he intentado ser lo más fiel posible a la manera de jugar entre dos jugadores.

Una serie de partidas las gana el jugador:

  • Que cierra con una Escalera Real, con las 10 cartas combinadas en una sola escalera del mismo palo.
  • Si al sumar los puntos de la última partida, el otro jugador sobrepasa los 100 puntos en el total de la serie que se está jugando.


Qué datos se guardan de cada partida

Cuando acaba una partida se guardan sus datos:

  • Fecha y hora
  • Puntos de cada jugador.
  • Total de puntos de cada jugador de la serie de partidas.

Si uno de los jugadores gana la serie de partidas, esa partida se colorea con un verde más oscuro, añadiendo un juego más a ese jugador.


Cómo ver los resultados de las partidas

Los datos se guardan en la hoja 'Juegos', con la macro del módulo modJuegos:

  • AnotarPuntos: Anota los puntos del juego a partir de la fila 21 de la hoja 'Juegos'.

En la celda D18 está el total de las partidas jugadas.

En las celdas D3 y J3 están las series de partidas ganadas por cada jugador.

Para ver estos datos en la hoja 'Tapete' se usa la macro:

  • MostrarJuegos: Muestra u oculta los juegos de las partidas jugadas en una forma (shape) de Excel, creada con la cámara de Excel.

TRUCO: Con esta macro se consigue crear una imagen estática de las partidas jugadas, escribiendo por segunda vez la fórmula sin rangos:

Selection.Formula = ""

Con lo que se consigue mejorar el rendimiento del juego, pues si se mantiene la fórmula de la cámara de Excel, la imagen es dinámica y se refresca y se recalcula continuamente. Por eso hay que igualar la fórmula dos veces, una con el rango de la foto y otra sin nada, como se ve en este código:


Qué falta por hacer

Para poder finalizar el diseño del juego aún falta bastante por hacer:

  1. Ajustar y optimizar el motor del juego, hecho con el complemento Solver.
  2. Corregir los defectos del juego y seguir mejorándolo.
  3. Documentar el juego profesionalmente...
  4. Barajar de forma menos aleatoria, pues la mayoría de los humanos no somos tan variables, y creo que nos gusta la rutina...
  5. Que el Rabino en Excel cierre alguna vez con Color o con Escalera Real, lo que es muy improbable que ocurra ahora... 
  6. Colocar las cartas de los dos jugadores en un arco, como si las tuvieras en la mano...
  7. Poder jugar dos humanos en remoto...
  8. Cualquier cosa que se te ocurra añadir a este juego de cartas, y seas capaz de programarlo, ya sea modificando las fórmulas de Excel o cambiando el código en VBA...

Algún día puede ser que me dedique a ello. De momento, prefiero dejar las cartas a un lado, pues ya le he dedicado más de 3 meses al diseño de este juego del Rabino y quiero hacer otras cosas...


Descarga un juego del Rabino en Excel

Descarga esta variante del Rabino, compatible con las versiones de escritorio desde Excel 2010 hasta Excel para Microsoft 365.

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 macros VBA no están protegidas, por lo que puedes analizarlas. Las hojas están protegidas con una contraseña que es fácil conocer, pues está guardada en VBA escrita en la constante: sContra.

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


Más juegos de cartas en Excel

En este enlace encontrarás todos los juegos de cartas que he programado en Excel:

Me ayudarás si me indicas las erratas que encuentres y me digas qué mejoras le faltan a este juego...

Jugando al Rabino en Excel - Parte 9

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


Parte 9 de un juego del Rabino

Esta es la novena parte de una serie de artículos con los que intento diseñar en Excel un juego de cartas con una variante especial del Rabino.

Al final de este artículo hay un enlace a todos mis juegos de cartas.

En esta Parte 9 explicaré:

♥️  Cuándo decide Excel acabar la partida.

♠️  Cómo elegir la carta comodín: Rabino o The Jolly.

♦️  Cómo ver u ocultar los puntos de cada jugador.

♣️  Qué falta por hacer para completar el desarrollo de este juego.

La principal novedad de esta entrega es que el motor del juego decide automáticamente cuándo acabar la partida, indicando qué jugador ha cerrado y los puntos de cada jugador, además de mostrar las cartas del jugador Rabino en Excel, que son las cartas de arriba ocultas durante la partida.


Vídeo con la Parte 9 del juego

En este vídeo verás una de las muchas partidas que he jugado contra el Rabino en Excel, y así probar el motor del juego.


Cuándo decide Excel acabar la partida

Esta variante del Rabino no la he diseñado en plan profesional sino en plan didáctico, aunque estoy intentando ser lo más fiel posible a la manera de jugar entre dos jugadores.

En esta Parte 9 ya se puede jugar una partida completa, y es el motor del juego el que decide si se cumplen las condiciones para acabar la partida, según las reglas del juego que están escritas en la hoja 'Ayuda'.

La nueva función: TestFinPartida, detecta si se puede acabar la partida en curso cerrando el primero de los dos jugadores que puede:

1) Cerrar con Escalera Real, asignando -100 puntos si las 10 cartas son del mismo palo y forman una sola escalera.

2) Cerrar con Color, asignando -25 puntos si las 10 cartas son del mismo palo y no están todas combinadas.

3) Cerrar con -10 puntos, si las 10 cartas están combinadas según las reglas del juego.

4) Cerrar con 1, 2 o 3 puntos, si hay 9 cartas combinadas y una carta sin combinar, esta carta debe ser un as (1), un dos (2) o un tres (3), asignando los puntos de la carta no combinada.

Al jugador que no ha cerrado se le asigna la suma de los puntos de las cartas sin combinar.

El jugador Rabino en Excel, con las cartas de arriba, avisa del cierre con un mensaje.

Al jugador con las cartas de abajo se le pregunta si cierra ya o si sigue jugando. Por ejemplo, para mejorar el cierre del jugador humano, en lugar de cerrar con 3, 2 o 1 puntos, podría intentar cerrar con -10 puntos. O también podría intentar cerrar con Color (-25 puntos) o con Escalera Real.

En el momento en que se decide finalizar la partida, se muestran las cartas de la fila de arriba del jugador Rabino en Excel, que estaban ocultas porque son las cartas de nuestro contrincante. Esto se consigue llamando a la macro: MostrarJugador2

La función TestFinPartida se apoya en varias celdas de la hoja 'Motor'.

Nuevas celdas en la hoja 'Motor':

  • Celda B15 - miCartaMarcaPila: Vale 1 si el motor del juego ha elegido una carta de la pila. Vale 0 si ha elegido una carta del mazo oculto.
  • Celda B17 - miFinJugador2: Fórmula con los puntos para tomar la decisión de cerrar el jugador 2: Rabino en Excel.
  • Celda B18 - miFinJugador1: Fórmula con los puntos para tomar la decisión de cerrar el jugador 1: Usuario de Excel.
  • Celda B20 - misPuntos2: Vale 1 si muestra los puntos del jugador 2.
  • Celda B21 - misPuntos1: Vale 1 si muestra los puntos del jugador 1.
  • Celda B22 - misPuntos0: Vale 1 si muestra los puntos del jugador 1 siempre y del jugador 2 cuando acaba la partida.
  • Columna R: Fórmulas para averiguar si un jugador cierra con Color, con las 10 cartas del mismo palo.
  • Columna S: Fórmulas para averiguar si un jugador cierra con Escalera Real.
  • Columna T: Fórmulas para controlar el buen funcionamiento del motor del juego, si todas las celdas valen 0. Será erróneo si alguna celda es mayor que cero.


Cómo elegir la carta comodín

Antes de comenzar una partida se puede elegir la carta comodín: Rabino o The Jolly.

Haciendo clic en la figura de un comodín se cambia al otro comodín mediante la macro: ElegirRabino

Solamente se permite elegir el comodín antes de iniciar la partida, tal y como se muestra en la imagen animada de la derecha, pues durante la partida no se ve el comodín.

El cambio de comodín se hace en la celda N2 (miRabino) de la hoja 'Baraja'.


Cómo ver u ocultar los puntos

Haciendo clic en la celda BO1 con un cero (0) se ven u ocultan los puntos de cada jugador, llamando a la macro: VerPuntos

Los puntos de las cartas de arriba solamente se ven al finalizar la partida, para no dar pistas durante la partida de las cartas combinadas por el motor del juego para el jugador Rabino en Excel.


Qué falta por hacer

Para poder finalizar el diseño del juego aún falta bastante por hacer:

  1. Guardar estadísticas de las partidas jugadas.
  2. Obtener el ganador de una serie de partidas.
  3. Ajustar y optimizar el motor del juego con el complemento Solver.
  4. Corregir los defectos del juego y seguir mejorándolo.

Los dos primeros puntos los veremos en la próxima entrega, que será la última de este curso sobre el diseño de un juego de cartas en Excel. Los otros dos puntos los dejo para más adelante...


Descarga la Parte 9 de un Rabino en Excel

Descarga la Parte 9 de esta variante del Rabino, compatible con las versiones de escritorio desde Excel 2010 hasta Excel para Microsoft 365.

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 macros VBA no están protegidas, por lo que puedes analizarlas. Las hojas están protegidas con una contraseña que es fácil conocer, pues está guardada en VBA escrita en la constante: sContra.

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


Más juegos de cartas en Excel

En este enlace encontrarás todos mis juegos de cartas programados en Excel:

Me ayudarás si me indicas las erratas que encuentres en este artículo, y si me comentas qué es lo que te gustaría ver en los próximos artículos.

Jugando al Rabino en Excel - Parte 8

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


Parte 8 de un juego del Rabino

Esta es la octava parte de una serie de artículos con los que intento diseñar en Excel un juego de cartas con una variante especial del Rabino.

Al final de este artículo hay un enlace a todos mis juegos de cartas.

En esta Parte 8 explicaré:

♥️  Que ya se puede jugar una partida completa contra el motor del juego.

♠️  Que Excel ya decide automáticamente qué carta jugar, marcando en un marco amarillo una carta del mazo o de la pila de descartes.

♦️  Que el motor del juego también decide qué carta tirar a la pila de descartes.

♣️  Cómo saber qué cartas ha combinado el motor del juego.

Si ves esta imagen es que algo ha fallado. La conseguí mientras hacía pruebas para marcar la carta que ha decidido jugar el Rabino en Excel, obtenida por el motor del juego, que es una combinación del complemento Solver y de código VBA.

Durante el juego, cuando le toque jugar a las cartas de arriba quedará marcada la carta a jugar con un marco de color amarillo, y solamente será marcada una carta, que será la que hay que jugar.

El motor del juego decide automáticamente qué carta jugar, marcando en un marco amarillo una carta del mazo o de la pila de descartes. Y también decide qué carta tirar a la pila de descartes.


Vídeo con la Parte 8 del juego

En este vídeo verás un par de partidas completas, que he jugado contra el motor del Rabino en Excel.

A continuación explicaré lo que no he querido contar en este vídeo para no hacer espóiler.


Cómo jugar una partida completa

Esta variante del Rabino no la he diseñado en plan profesional sino en plan didáctico, aunque estoy intentando ser lo más fiel posible a la manera de jugar entre dos jugadores.

En esta Parte 8 he ocultado las cartas de arriba, para que no se sepa que mano tiene el Rabino en Excel, aunque aún sigo mostrando el valor de las cartas sin combinar, para hacer más didáctico el juego...

Ya no se muestra ningún cuadro de diálogo, cuando Solver intenta resolver la combinación de cartas, y el motor del juego marca la siguiente carta que jugará nuestro contrincante del Rabino en Excel.

He cambiado la llamada al complemento Solver de Excel para que no salga ningún mensaje cuando se alcanza alguno de los límites, de tiempo por ejemplo, que he fijado intentando resolver las combinaciones posibles de las cartas del jugador Rabino en Excel.

En la macro ResolverCartas he modificado estas instrucciones:

' Ejecuta el análisis

result = Application.Run("Solver.xlam!SolverSolve", True, "ShowTrial")

' Finaliza el análisis

Application.Run "Solver.xlam!SolverFinish", 1

Y he añadido esta nueva macro:

Function ShowTrial(Reason As Integer)

ShowTrial = 0

End Function

En esta página en inglés se explica el uso de esta función para que, en lugar de que Solver se detenga por cualquier motivo mostrando el cuadro de diálogo: Mostrar solución de prueba, ahora no lo muestre y continúe intentando resolver la combinación de las cartas, sin necesidad de interactuar con el usuario del juego:

También he cambiado las opciones de Solver, para intentar mejorar su rendimiento, pero aún hay que optimizar esos valores algo más, por lo que seguiré estudiando esta página en inglés:


Cómo decide el motor del juego qué carta jugar

El motor del juego ya decide automáticamente cuál es la próxima carta que jugará el Rabino en Excel, marcando en un marco amarillo una carta del mazo o de la pila de descartes. También decide automáticamente qué carta tirar a la pila de descartes.

AVISO: La carta marcada en amarillo se debe escoger obligatoriamente, y el juego no permite elegir otra carta que no sea la que ha marcado el motor del juego.

Para hacer más realista el juego, la carta marcada en amarillo tiene que moverla el jugador humano, pues no cambia automáticamente de un lugar a otro.

En esta imagen animada el motor del juego marca en amarillo el Rey (K) de tréboles♣️, para que sea robado de la pila de descartes. A continuación intenta resolver las posibles combinaciones de las 11 cartas, y acaba marcando el 7 de diamantes♦️, para que sea descartado y echado a la pila de descartes.

Para ello he añadido dos nuevas macros al módulo: modReglas

  • ElegirCarta: Para decidir si el Rabino en Excel marca la carta del mazo o de la pila de descartes.
  • MarcarCarta: Para marcar la carta que jugará el Rabino en Excel.


En la hoja 'Motor' he añadido algunas fórmulas para elegir y marcar la carta a jugar.

En la celda B12 se escribe la carta de la pila de descartes, para comprobar si combina con las otras 10 cartas del jugador 2, que es el Rabino en Excel.

En la celda F14 se comprueba si el valor de esa carta es igual al de alguna de las 10 cartas, en cuyo caso queda marcada.

En la celda G14 se comprueba si esa carta puede formar parte de una escalera con alguna de las 10 cartas, en cuyo caso queda marcada.

Si la carta de la pila de descartes no sirve para combinar con alguna de las 10 cartas, la carta de arriba del mazo será la que quedará marcada.

La carta marcada, sea del mazo o de la pila de descartes, será la que el jugador 2 robará para intentar combinarla con las otras 10 cartas.

Una vez combinadas las cartas, el motor del juego decidirá qué carta marcar, y la carta marcada habrá que echarla a la pila de descartes.

La fórmula que se ve en la imagen de arriba, de la celda Q14, es la que decide qué carta marcar, valiéndose del nuevo rango de celdas Q3:Q13, en el que se indica qué cartas no están combinadas y son candidatas a descartarlas.

Las fórmulas anteriores pueden variar sin previo aviso en las próximas entregas de las partes de este desarrollo del juego, siempre con la intención puesta en mejorarlo...


Qué cartas combina el motor del juego

Para saber qué cartas ha combinado el jugador Rabino en Excel, en la Parte 8 hay que ver el rango E3:E13 de la hoja 'Motor', donde están las cartas ordenadas según las combinaciones resueltas por el motor del juego.

Este procedimiento no será necesario cuando se muestren las cartas de la fila de arriba, en el momento en que se decida dar por finalizada la partida, lo que se verá en la siguiente entrega de este juego...


Qué falta por hacer

Para poder finalizar el diseño del juego aún falta bastante por hacer:

  1. Cerrar la partida con Escalera Real, si todas las cartas están combinadas en una única escalera del mismo palo.
  2. Cerrar la partida con Color, si todas las cartas son del mismo palo aunque no estén combinadas.
  3. Decidir cuándo acaba la partida cualquiera de los dos jugadores.
  4. Mostrar las cartas del jugador Rabino en Excel al acabar la partida.
  5. Ordenar las cartas combinadas del jugador Rabino en Excel.
  6. Guardar estadísticas de las partidas entre los dos jugadores.

Todo esto lo iremos viendo en las próximas entregas de las Partes de este curso sobre el diseño de un juego de cartas en Excel.


Descarga la Parte 8 de un Rabino en Excel

Descarga la Parte 8 de esta variante del Rabino, compatible con las versiones de escritorio desde Excel 2010 hasta Excel para Microsoft 365.

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 macros VBA no están protegidas, por lo que puedes analizarlas. Las hojas están protegidas con una contraseña que es fácil conocer, pues está guardada en VBA escrita en la constante: sContra.

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


Más juegos de cartas en Excel

En este enlace encontrarás todos mis juegos de cartas programados en Excel:

Me ayudarás si me indicas las erratas que encuentres en este artículo, y si me comentas qué es lo que te gustaría ver en los próximos artículos.

Mi lista de blogs