Compartir a través de


Solución de problemas de scripts de Office

A medida que desarrolle scripts de Office, puede cometer errores. Está bien. Tiene las herramientas para ayudar a encontrar los problemas y conseguir que los scripts funcionen perfectamente.

Nota:

Para obtener consejos de solución de problemas específicos de scripts de Office con Power Automate, consulte Solución de problemas de scripts de Office que se ejecutan en Power Automate.

Límites y requisitos de la plataforma

Para obtener una lista detallada de las limitaciones de la plataforma de Scripts de Office debido a Excel, Power Automate u otras tecnologías, consulte Límites y requisitos de la plataforma con scripts de Office.

Errores de script

Los errores de scripts de Office se dividen en una de dos categorías:

  • Errores o advertencias en tiempo de compilación
  • Errores en tiempo de ejecución

Errores en tiempo de compilación

Los errores y advertencias en tiempo de compilación se muestran inicialmente en el Editor de código. Estos se muestran mediante los subrayados rojos ondulados en el editor. También se muestran en la pestaña Problemas de la parte inferior del panel de tareas Editor de código. Al seleccionar el error, se proporcionan más detalles sobre el problema y se sugieren soluciones. Los errores en tiempo de compilación deben solucionarse antes de ejecutar el script.

Error del compilador que se muestra en el texto del mouse del Editor de código.

También puede ver subrayados de advertencia naranja y mensajes informativos grises. Estos indican sugerencias de rendimiento u otras posibilidades en las que el script puede tener efectos involuntarios. Estas advertencias deben examinarse detenidamente antes de descartarlas.

Errores en tiempo de ejecución

Los errores en tiempo de ejecución se producen debido a problemas lógicos en el script. Esto podría deberse a que un objeto usado en el script no está en el libro, una tabla tiene un formato diferente al previsto o a alguna otra ligera discrepancia entre los requisitos del script y el libro actual. El siguiente script genera un error cuando una hoja de cálculo denominada "TestSheet" no está presente.

function main(workbook: ExcelScript.Workbook) {
  let mySheet = workbook.getWorksheet('TestSheet');

  // This will throw an error if there is no "TestSheet".
  mySheet.getRange("A1");
}

Algunos errores en tiempo de ejecución se deben a que se superan los límites de la plataforma, como intentar escribir demasiados datos a la vez con Excel en la Web. Consulte Límites y requisitos de la plataforma con scripts de Office para obtener una lista completa de posibles problemas.

Mensajes de consola

Los errores en tiempo de compilación y en tiempo de ejecución muestran mensajes de error en la consola cuando se ejecuta un script. Proporcionan un número de línea donde se encontró el problema. Tenga en cuenta que la causa principal de cualquier problema puede ser una línea de código diferente a la indicada en la consola.

En la imagen siguiente se muestra la salida de la consola para el error explícito any del compilador. Anote el texto [5, 16] al principio de la cadena de error. Esto indica que el error está en la línea 5, empezando por el carácter 16. La consola del Editor de código que muestra un mensaje de error explícito

En la imagen siguiente se muestra la salida de la consola de un error en tiempo de ejecución. Aquí, el script intenta agregar una hoja de cálculo con el nombre de una hoja de cálculo existente. Una vez más, observe la "línea 2" anterior al error para mostrar qué línea investigar. La consola del Editor de código muestra un error de la llamada

Registros de consola

Imprima mensajes en la pantalla con la console.log instrucción . Estos registros pueden mostrar el valor actual de las variables o qué rutas de acceso de código se desencadenan. Para ello, llame a console.log con cualquier objeto como parámetro. Normalmente, es string el tipo más fácil de leer en la consola.

console.log("Logging myRange's address.");
console.log(myRange.getAddress());

Las cadenas pasadas a console.log se muestran en la consola de registro del Editor de código, en la parte inferior del panel de tareas. Los registros se encuentran en la pestaña Salida , aunque la pestaña obtiene automáticamente el foco cuando se escribe un registro.

Los registros no afectan al libro.

No aparece la pestaña Automatizar o scripts de Office no están disponibles

Los pasos siguientes deben ayudar a solucionar cualquier problema relacionado con la pestaña Automatizar que no aparezca en Excel.

  1. Asegúrese de que la licencia de Microsoft 365 incluye scripts de Office.
  2. Asegúrese de que las cookies de terceros están habilitadas (cuando se usa Excel en la Web).
  3. Asegúrese de que el administrador no ha deshabilitado los scripts de Office en el Centro de administración de Microsoft 365.
  4. Asegúrese de que el administrador no ha configurado una directiva de grupo para bloquear scripts de Office (solo Windows).
  5. Instale WebView2 (solo Windows).
  6. Asegúrese de que no ha iniciado sesión como usuario externo o invitado en el inquilino.

Importante

Cuando se usa Excel con Teams, los scripts de Office solo se admiten en Teams en la web (no en Teams para Windows, Mac, iOS o Android).

Nota:

Hay un problema conocido que impide que los scripts almacenados en SharePoint aparezcan siempre en la lista usada recientemente. Esto ocurre cuando el administrador desactiva Exchange Web Services (EWS). Los scripts basados en SharePoint siguen siendo accesibles y se pueden usar a través del cuadro de diálogo de archivo.

Problemas al programar un script

La programación de un script requiere una licencia empresarial para Microsoft 365. Esto es necesario para el flujo de Power Automate que activa el script programado. Los errores de este flujo se muestran cuando hay problemas de programación. Es posible que tenga que actualizar manualmente el flujo en Power Automate, donde aparecerá en Mis flujos.

En la lista siguiente se muestran errores comunes que puede encontrar.

  • La hora UTC de expiración del token de acceso es anterior a la hora UTC actual. Se ha pasado demasiado tiempo entre iniciar sesión en el servicio y programar el script. Vuelva a abrir el script en el Editor de código o vuelva a cargar el libro e intente programar de nuevo.

Recursos de ayuda

Stack Overflow es una comunidad de desarrolladores dispuestos a ayudar con los problemas de codificación. A menudo, podrá encontrar la solución al problema a través de una búsqueda rápida de Stack Overflow. Si no es así, formule su pregunta y etiquete con la etiqueta "office-scripts". Asegúrese de mencionar que está creando un script de Office, no un complemento de Office.

Consulte también