Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Война за буфер обмена между excel и powerpoint / 8 сообщений из 8, страница 1 из 1
07.04.2015, 15:40
    #38929442
SEYD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Война за буфер обмена между excel и powerpoint
Добра!

есть у меня некий макрос, который копирует в цикле определенные таблицы из книги экселя в презентацию пауерпоинта. И иногда при вызове метода .CopyPicture(xlPrinter, xlPicture) объекта Range вылезает ошибка: "Run-time error 1004. Не удается очистить буфер обмена. Возможно, буфер обмена используется другим приложением." При этом если нажать debug и продолжить выполнение с этой строчки, то все выполняется успешно или может споткнуться на одной из следующих итераций (без какой-либо систематичности). Я сделал вывод, что иногда пауэрпоинт не успевает освободить буфер обмена от предыдущей итерации, а эксель уже пытается в него залить новые данные, вот и возникает ошибка.
Еще раз повторюсь, при абсолютно одинаковых данных ошибка может не возникнуть, но если возникает, то от раза к разу на разных итерациях цикла.

Что с этим делать не знаю...
...
Рейтинг: 0 / 0
07.04.2015, 15:43
    #38929452
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Война за буфер обмена между excel и powerpoint
А пунтосвичер не стоит (с включенным слежением за буфером обмена)?
...
Рейтинг: 0 / 0
07.04.2015, 15:49
    #38929462
SEYD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Война за буфер обмена между excel и powerpoint
нет
...
Рейтинг: 0 / 0
07.04.2015, 15:59
    #38929472
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Война за буфер обмена между excel и powerpoint
SEYDЧто с этим делать не знаю...
НаписАть обработчик ошибок. При возникновении именно этой ошибки именно в этой строке - сделать небольшой тайм-аут (скажем, 100 мс), после чего повторить операцию. И только если её не удалось выполнить, скажем, после 3 попыток, затевать вопли.
...
Рейтинг: 0 / 0
07.04.2015, 16:19
    #38929513
SEYD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Война за буфер обмена между excel и powerpoint
есть в vba какая-то функция типа delay? или надо цикл делать? :)
...
Рейтинг: 0 / 0
07.04.2015, 16:26
    #38929528
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Война за буфер обмена между excel и powerpoint
Лучше всего задействовать АПИ-шную Sleep - процессор не будет расходоваться
...
Рейтинг: 0 / 0
08.04.2015, 16:45
    #38930817
SEYD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Война за буфер обмена между excel и powerpoint
как задействовать API-шную функцию?
...
Рейтинг: 0 / 0
08.04.2015, 16:54
    #38930838
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Война за буфер обмена между excel и powerpoint
SEYDкак задействовать API-шную функцию?
как найти декларацию API-функции?

declare sub/function название_функции
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Война за буфер обмена между excel и powerpoint / 8 сообщений из 8, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]