Страницы: 1
RSS
Из буфера обмена вставляется не то что нужно
 
Вот это кладу в буфер:
https://prnt.sc/vpktd1
____________________________________________________________­___________________
А вот это вставляется:
https://prnt.sc/vpkuo0
____________________________________________________________­___________________
Мсджбокс показывает верно:
https://prnt.sc/vpkv0n
____________________________________________________________­____________________
В винде вставляется верно:
https://prnt.sc/vpkvbg

Пробовал переустановить офис, думал что библиотека косячит. Не помогло.
Мною дополнительно был задан этот вопрос в телеграмм канале https://t.me/eh_chat ответа нет
Прошу прощения картинки почему-то не вставлялись никакие - пишет что превышен максимальный размер изображения
 
с файлом-примером было бы лучше
 
Цитата
VideoAlex написал:
В винде вставляется верно
так. А где же Вы код запускаете? Не в винде?
Пробовали Obj передавать как String? Другой тип передавать все равно ведь смысла нет - встроенный DataObject все равно другие типы не понимает.
Плюс непонятно как Вы в ячейку текст помещаете - кода такого нигде не видать. Типа догадайтесь: через код или руками делаю вставку.

P.S. Не прикладывать сам файл с кодом, а только картинки - вообще не понимаю подобный подход...
Изменено: Дмитрий(The_Prist) Щербаков - 25.11.2020 13:25:44
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Файл. Стартуем с процедуры максималки_вр()
Как стринг пробовал. монопенисуально.

После отработки процедуры и закрытия мсджбокса попробуйте вставить вручную в любую ячейку содержимое буфера через КТРЛ+Ц

Ребята потестили на своих машинах - у них норм. Дело в моей машине или програмном обеспечении и его настройках. что-может влиять на буфер в офисе?
Изменено: VideoAlex - 25.11.2020 13:59:45
 
Подобные темы обсуждались на форуме, например, здесь. Причины, как правило, в сторонних программах или оборудовании.
Владимир
 
Одна активная надстройка mcafee dlp office addin
 
Попробуйте всё поотключать. Программы не обязательно могут относиться к офису. Эффект сохраняется?
Изменено: sokol92 - 25.11.2020 14:59:34
Владимир
 
sokol92, Владимир, сохраняется, точнее появляется на "условно эталонной системе".
По вопросам из тем форума, личку не читаю.
 
Проверил на конфигурациях Excel 2019 (64-, en) Win10, Excel 2016 (32-) Win10, Excel 2007  Win XP. Везде вставляется корректно.
Изменено: sokol92 - 25.11.2020 15:14:39
Владимир
 
У меня копипастит корректно, но если выкинуть строку
txt = ClipboardText
С нею вываливается в ошибку.
 
Вот еще нашел тему, в которой предложено и возможное лекарство (альтернативный способ для помещения текста в буфер обмена),
А в этом сообщении выдвинута гипотеза о  возможной причине этой беды.
Изменено: sokol92 - 25.11.2020 15:56:56
Владимир
 
sokol92, Спасибо огромное! Вы очень помогли. Альтернативный способ помещения в буфер работает.
 
Успехов!
Владимир
 
Есть еще такой вариант функций для надежной работы с буфером обмена:
Код
Function SetClipBoardText(ByVal Text As Variant) As Boolean
  SetClipBoardText = CreateObject("htmlfile").ParentWindow.ClipboardData.SetData("Text", Text)
End Function

Function GetClipBoardText() As String
  On Error Resume Next
  GetClipBoardText = CreateObject("htmlfile").ParentWindow.ClipboardData.GetData("Text")
End Function

Function ClearClipBoardText() As Boolean
  ClearClipBoardText = CreateObject("htmlfile").ParentWindow.ClipboardData.СlearData("Text")
End Function
Изменено: ZVI - 26.11.2020 21:50:09
Страницы: 1
Наверх