оболочка vba не работает в Excel 2016 - PullRequest
0 голосов
/ 08 марта 2019

У меня есть диаграммы в Excel, которые я копирую и передаю во внешний менеджер изображений с флагами по команде Shell, чтобы сохранить каждую диаграмму в формате GIF.В Excel 2003 он работает нормально, но в 2016 году он не работает.Я попытался обернуть строку двойными кавычками, даже если в ней нет места, не повезло.Однако, если я распечатаю строку с debug.print ShComd и введу ее, то она будет работать в 2016 году, например:

ShComd="C:\IrfanView\i_view32.exe ... =C:\Test\Sheet1.gif /killmesoftly"

Так что это не удастся только в 2016 году в строке PID =... с неверным аргументом

ShComd = i_view_Path & "\i_view32.exe /clippaste /convert=" _
& SavePath & "\" & Sht.Name & ".gif /killmesoftly"   
For Each Chrt In Sht.ChartObjects
    Chrt.Copy
    DoEvents
    Sleep (250) 'start up irfanview to avoid "Can't Load"
    PID = Shell(ShComd) 'fails here in 2016
Next Chrt

Как получилось?

1 Ответ

0 голосов
/ 08 марта 2019

Билли, я бы сначала сослался на библиотеку, Объектная модель хоста скриптов Windows. Затем воспользуемся методом Run. И, что наиболее важно для вас, разделите несколько команд с помощью "&&"

Вы можете увидеть здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...