Traducir el blog

Traducción de idiomas con cálculo iterativo

Posted on octubre 21, 2021 by Excel Pedro Wave

El cálculo iterativo se usa muy poco, principalmente porque no se conoce, y cuando se conoce ¡es difícil usarlo!

Si ya es difícil saber qué fórmulas dependen de qué celdas, más difícil es saber cómo se calculan las fórmulas con referencias circulares, dependientes de la misma celda donde está la fórmula o de vete tú a saber de qué otras celdas dependen.

Para saber cómo habilitar el cálculo iterativo lee este artículo:

Cambiar la precisión, la iteración o el cálculo de fórmulas en Excel (microsoft.com)

Lo difícil es controlar las referencias circulares con el cálculo iterativo pero, como ya he hecho otros ejemplos con el cálculo iterativo (enlace aquí), me he puesto el reto de hacer cuestionarios sin usar macros.

Más abajo podrás descargar una plantilla de Excel, como la de la siguiente imagen animada, que es un Cuestionario de Traducción de Idiomas hecho enteramente con cálculo iterativo. ¡Nada de usar macros VBA!


Vídeo del Cuestionario de Idiomas

En el vídeo explico cómo usar el cuestionario de traducción de idiomas:

      


Características del Cuestionario de Idiomas

Al no usar macros, este Cuestionario se puede usar en Excel para escritorio, en Excel Online o en la Web, e incluso en Excel para Android o Mac, cosa que está prohibida para archivos con macros VBA, que ni siquiera están autorizadas en todas las empresas y en entornos de trabajo seguros...

A la derecha se muestra el aspecto del Cuestionario en Excel Online:

Las principales características del Cuestionario son:

  1. Está hecho con el cálculo iterativo de referencias circulares.
  2. No contiene macros VBA ni Office Script.
  3. Recalcula todo cambiando una única celda MiTraducción: =Traducir!$B$11
  4. Pregunta en un idioma seleccionable y hay que responder la traducción en el idioma elegido.
  5. Avisa si la traducción es correcta o errónea.
  6. Informa del tiempo total de todas las traducciones.
  7. Informa del tiempo parcial de una traducción, contabilizando únicamente la suma de tiempos parciales de contestación de las respuestas.
  8. Guarda los resultados de la traducciones en la hoja de 'Resultados'.
  9. Indica el número de palabras acertadas del total de palabras a traducir.
  10. Marca los puntos conseguidos como un factor entre las palabras acertadas y las totales.
  11. Se puede configurar el idioma a traducir y el traducido.
  12. Se puede configurar el número de traducciones de cada test del cuestionario.
  13. Tabla de Idiomas con 9 idiomas precargados: Español; English; Français; Deutsche; Italiano; Português; Català; Galego; Euskara.
  14. Se pueden añadir o quitar idiomas.
  15. Se pueden modificar, añadir o borrar las palabras y frases a traducir.
  16. Funciona en Excel para Android y en Excel para Mac.
  17. Funciona en Excel Online o Excel para la Web.

A la derecha se muestra el aspecto del Cuestionario en Excel para Android:

Si quieres probarlo, ¿por qué no lo descargas?


Descarga del Cuestionario de Idiomas

El archivo sin macros y con fórmulas recalculadas iterativamente se puede descargar desde cualquiera de estos enlaces:

Abrir el archivo y habilitar la edición para analizar las fórmulas.


Cómo se hizo el Cuestionario de Idiomas

Para que funcione el Cuestionario de Idiomas he tenido que configurar el cálculo iterativo mediante estos pasos: 

  1. Hacer clic en la pestaña Archivo, seleccionar Opciones y luego hacer clic en la categoría Fórmulas.
  2. En la sección Opciones de cálculo, activar la casilla Habilitar cálculo iterativo.
  3. Para definir la cantidad de veces que Excel actualizará los cálculos, escribir el número de iteraciones en el cuadro Iteraciones máximas.
  4. Para definir el número máximo de cambio que se aceptará entre los resultados de los nuevos cálculos, escribir la cantidad en el cuadro Cambio máximo.

No modifiques estos valores en las Opciones de cálculo de las fórmulas:

Por lo que debe estar habilitado el cálculo iterativo, con 1 iteración y un único cambio, con lo que cada iteración sólo ocurrirá una vez.

¿Cuándo se produce el cálculo iterativo?

En cualquier momento que se recalcule una fórmula

¿Cómo se controla el momento del cálculo iterativo?

Haciendo que sólo cambie una única celda en la hoja principal en la que se van a traducir los idiomas.

¿Dónde se hace el cálculo iterativo?

En la hoja 'Traducir' todas las celdas están bloqueadas excepto la celda B11, en la que el usuario debe escribir la traducción de un idioma al otro.

La modificación de la celda B11 desencadena el recálculo de todas las fórmulas dependientes, en especial de las fórmulas con referencias circulares que se ejecutarán iterativamente una sola vez.

La hoja 'Configuración' contiene dos celdas con referencias circulares que son las que controlan el recálculo iterativo:

- B10 con el Contador.

- B11 con la fila traducida.

La hoja 'Traducir' está protegida sin contraseña, activando únicamente la casilla: Seleccionar celdas desbloqueadas.

Para que no cambie el foco a otra celda de esta hoja, no se debe activar la casilla: Seleccionar celdas bloqueadas.

Como todas las celdas de la hoja 'Traducir' están bloqueadas, para realizar un cambio el usuario debe escribir una traducción en la celda B11 y presionar la tecla Retorno (Enter en inglés), con lo que se muestra la traducción correcta, el resultado del test y los tiempos totales y parciales hasta el momento.

Para borrar el texto en B11, presionar la tecla Supr (Delete en inglés), con lo que pasa a mostrar la siguiente palabra o frase a traducir.

¿Cuáles son las fórmulas de la hoja 'Traducir'?

  • Celda B2 informando del contador y del total a traducir:
  • Celda B5 - Traducir, con el texto en el idioma a traducir:
  • Celda B8 - Traducción, con el texto en el idioma traducido:
  • Celda C11, con el test de la traducción, siendo correcta o incorrecta:

¿Cómo activar hipervínculos en hojas protegidas?

Debido a que la hoja 'Traducir' está protegida sin activar la casilla: Seleccionar celdas bloqueadas, los hipervínculos no funcionan en las celdas bloqueadas, por lo que ha hecho falta insertar formas rectangulares con hipervínculos, encima de las siguientes celdas, como una solución alternativa (workaround en inglés):

  • Celda B2, para ir a cambiar el Nº de traducciones: 'Configuración'!B8.
  • Celda B4, para ir a cambiar el Idioma a traducir: 'Configuración'!B4.
  • Celda B7, para ir a cambiar el Idioma traducido: 'Configuración'!B6.
  • Celda B10, para ir a la hoja de 'Idiomas'.
  • Celda C2, para ir a la hoja de 'Resultados'.
  • Celda B14, para ir al Blog: https://pedrowave.blogspot.com
  • Celda C14, para ir al Copyright: https://creativecommons.org/licenses/by-nc-sa/3.0/deed.es
  • Imagen Copyright, para ir al Copyright anterior.

¿Cómo comprobar los resultados del cuestionario?

Cuando se han traducido el Nº de traducciones programadas, se marcan en fondo de color naranja las celdas B11 y C2, para avisar que se puede  Ir a Resultados , para comprobar los resultados del cuestionario antes de suprimir la última respuesta.

Haciendo clic en la celda C2 se va a la hoja 'Resultados', que avisa con este mensaje:

"Recalcular resultados con la tecla F9"

Presionando la tecla F9 se recalcula el resumen de resultados, informando del número de traducciones acertadas del total, del tiempo parcial de esas traducciones, del número de palabras acertadas del total de palabras y del número de puntos referidos al porcentaje de palabras acertadas sobre el total de palabras a traducir.

¿Cómo interpretar los resultados del cuestionario?

  • Columna A: con el número de respuesta.
  • Columna B: con la fila traducida de la hoja 'Idiomas'.
  • Columna C: con la traducción correcta.
  • Columna D: con la traducción del usuario.
  • Columna E: con el resultado del test con un símbolo de correcto o incorrecto.
  • Columna F: con el tiempo parcial de cada respuesta, sin incluir tiempos de cambio de pregunta.
  • Columna G: con el número de palabras de cada una de las traducciones correctas.
  • Columna H: con el número de palabras acertadas en cada traducción.

¿Cómo configurar el cuestionario?

La hoja 'Configuración' permite configurar el cuestionario:

  • Celda B4 con el Idioma a traducir entre 9 preconfigurados.
  • Celda B6 con el Idioma traducido.
  • Celda B8 con el Nº de traducciones de 5 a 30.


¿Cómo se hace el recálculo iterativo del cuestionario?

Con estas celdas auxiliares de la hoja 'Configuración':

  • Celda B10 - MiContador: con el Contador de traducciones, con una fórmula con referencias circulares a esa misma celda.
  • Celda B11 - MiFila: con el número de fila traducida, calculada aleatoriamente con una fórmula con referencias circulares a esa misma celda.
  • Celda B12 - MisFilas: con el número de filas totales a traducir.
  • Celda B14 - MiAhora: con la hora actual.
  • Celda B15 - MiHoraTotal: con la hora inicial del cuestionario, con una fórmula con referencias circulares a esa misma celda.
  • Celda B16 - MiTiempoTotal: con el tiempo total del cuestionario.
  • Celda B17 - MiHoraParcial: con la hora de la pregunta actual del cuestionario, con una fórmula con referencias circulares a esa misma celda.
  • Celda B18 - MiTiempoParcial: con el tiempo parcial de la pregunta actual del cuestionario.

¿Dónde están las traducciones?

En la hoja 'Idiomas' está la tabla con los 9 idiomas predefinidos, con las palabras y frases a traducir.


Se pueden añadir o quitar los idiomas de cada columna, y se puede modificar cualquier traducción, quitarla o añadir nuevas palabras o frases para traducir.

¿Has usado alguna vez el cálculo iterativo?

Con este ejemplo ya puedes tratar de usar el cálculo iterativo en tus próximas fórmulas de Excel.

¿Se te ocurren más usos del cálculo iterativo?

En un próximo artículo trataré de hacer un cuestionario de preguntas y respuestas que te gustará.

No Response to "Traducción de idiomas con cálculo iterativo"

Leave A Reply

Dime si te gusta lo que lees y, si no te gusta, dime por qué. Tengo habilitada la moderación de comentarios. Tu comentario se publicará pronto.

Mi lista de blogs