На сегодня есть 3 варианта решения, файлы во вложении:
Вариант №1 от
sokol92, через PowerShell,
файл "TextToClipboard — HTML"1. + Маленький код
2. + Всё работает
3. + С кириллицей проблем нет
4. - Может не работать на корпоративных машинах из-за ограничений (безопасности) для вызова PowerShell
Вариант №2 от
sokol92, без использования классов,
файл"TextToClipboard_3"1. + По идее работает везде
2. + С кириллицей проблем нет
3. - Запуск из редактора VBA:
- второй запуск кода не работает, В БО пусто, третий запуск всё норм
- если после запуска кода скопировать что-то руками, в самом редакторе VBA и вставить, вставляются кракозябры, в других местах всё норм, проблема только в редакторе.
4 + Запуск с кнопки: проблемы второго запуска не наблюдаются, но запуск с кнопки мне и не нужен, просто проверял.
Вариант №3 от
nilske, с дополнениями от
sokol92 Файл "MineTextToClipboard 2":
Код идентчен второму варианту, только расположен в модуле класса. Разницу увидел только в этой строке
Код |
---|
Private Declare PtrSafe Function GetClipboardData Lib "user32" (ByVal wFormat As LongPtr) As LongPtr
'был Private Declare PtrSafe Function GetClipBoardData Lib "user32" Alias "GetClipboardData" (ByVal wFormat As LongPtr) As LongPtr
|
ссылки на оригинал кода в #4 и #7. Код одинаковый со 2-м вариантом, поэтому "+" и "-" одинаковые, проверял. Таже проблема второго запуска.
Файл "MineTextToClipboard 2" - код оригинала только процедуры расположил по порядку их работы и добавил перевод.
Модуль класса "ClipboardFormat" в варианте HTML не используется, также как и процедуры ниже строки
Код |
---|
'================= В HTML не учавствуют ===================== |
Тесты от автора, в модуле "AuthorsTests" не запускаются (не работают).