Используя VBA, как поместить выбранный текст стороннего приложения в буфер обмена?


0

У меня есть следующая проблема. Мне нужно поместить выделенный текст стороннего приложения (т.е. не Word / Excel ...) (см. Пример выбора ниже) в буфер обмена:

введите описание изображения здесь

При этом я не могу использовать решение « MSForms.DataObject », поскольку пользователи, которые будут использовать это, не будут иметь доступа к этой библиотеке. И решение для отправки ключей также не работает " Application.SendKeys" ^ c ", True ", поскольку по какой-либо причине это просто не активирует команду быстрого доступа. Таким образом, единственным другим решением, которое я вижу, является использование API. Я сделал несколько обширных поисков в Google для этого, и действительно есть код, который помещает, например, строки в буфер обмена (пример здесь):

https://www.thespreadsheetguru.com/blog/2015/1/13/how-to-use-vba-code-to-copy-text-to-the-clipboard

Тем не менее, приведенный выше код принимает только предварительно заданную строку, найденную в переменной txt. Что я хотел бы знать, так это то, что я мог бы использовать для того, чтобы окна переносили выделение в буфер обмена или, в качестве альтернативы, если есть системный способ сказать, что компьютер должен использовать ctrl + c.

Спасибо за любые предложения или идеи!

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.