1 votos

AppleScript para guardar el gráfico de Excel como PNG roto después de la reciente actualización

He estado usando este código como parte de un script más grande durante el último año. Ayer actualicé Excel a la versión 16.10 (180210) y me sigue apareciendo un error de parámetro -50, que previamente he asociado a los permisos de acceso a un archivo o carpeta concreta. Como se sugiere en algunos otros artículos que he visto, tengo Excel alias la ruta, pero que ya no parece estar funcionando. ¿Alguna sugerencia?

Aquí está el código:

tell application "Finder" to set pth to container of (path to me) as text 
set {wb, ws, chartName} to {"testChart.xlsx", "charts", "spend"}
set fn to pth & chartName & ".png"

tell application "Microsoft Excel"
    alias pth
    alias fn
    tell workbook wb to tell worksheet ws
        try
            save as picture chart object chartName picture type save as PNG file file name fn
        on error errMsg number errNum
            log errMsg
            log errNum
        end try
    end tell
end tell

1voto

Karthik Ramachandran Puntos 4672

Publico aquí la resolución con la esperanza de que ayude a otros a no perder el tiempo como yo lo he hecho en los últimos días. Resulta que guardar un gráfico como una imagen a través de la automatización (tanto AppleScript como VBA) está roto en Excel 16.10 y 16.11. He tenido que volver a Excel 15.41 y ahora el código vuelve a funcionar.

0 votos

Puedo confirmar que gran parte de la biblioteca de scripts está rota desde que se lanzó la base de código unificada en la versión 16. Hasta el momento tenemos unos 25 errores que archivar desde mi lugar de trabajo y que nos afectan directamente. - Ver apple.stackexchange.com/a/318477/5472

0 votos

Gracias por la confirmación, Matt. Lo he enviado a MS, espero que se pongan a ello rápidamente.

0 votos

Perdón por el necropost. En realidad, tengo una solución para esto. Pero hay que adaptar el código para diferentes versiones de excel. Parece que Excel para Mac 2016 tiene un sandbox de seguridad y sólo se pueden exportar gráficos a "carpetas seguras". Ver rondebruin.nl/mac/mac034.htm . Puedo confirmar que no se puede utilizar AppleScript solo para exportar gráficos como imagen. Pero tengo una solución probada que utiliza TANTO VBA como AppleScript.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X