Как получить в коде макроса текуще значение буфера обмена?

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Alexander N.
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 07.03.2005 (Пн) 19:37

Как получить в коде макроса текуще значение буфера обмена?

Сообщение Alexander N. » 07.03.2005 (Пн) 19:40

Пишу макрос на VB, вот фрагмент кода:
Selection.Copy
Windows("EMA").Activate
Selection.Find.ClearFormatting
With Selection.Find
.Text = "4.998.041.445"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Как присвоить .Text не конкретную строку "4.998.041.445", а текст, который в данный момент содержится в буфере?
Помогите пожалуйста.

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 07.03.2005 (Пн) 19:52

Код: Выделить всё
.Text = Clipboard.GetText(vbCFText)
Моду создают модоки, а распространяют модозвоны.

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 07.03.2005 (Пн) 20:15

hCORe писал(а):
Код: Выделить всё
.Text = Clipboard.GetText(vbCFText)

Интуиция подсказывает мне, что там, где есть макросы, нет объекта Clipboard...
Изображение

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 07.03.2005 (Пн) 20:38

И точно :( Тогда надо делать ActiveX DLL (на VB6), работающую с объектом Clipboard. И подключать ее через меню Project :arrow: References редактора VBA.
Моду создают модоки, а распространяют модозвоны.

Alexander N.
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 07.03.2005 (Пн) 19:37

Сообщение Alexander N. » 07.03.2005 (Пн) 22:56

Все решилось написанием:
Dim iData As DataObject
Set iData = New DataObject
iData.GetFromClipboard
iText = iData.GetText
.Text = iText
и включением библиотеки Microsoft Forms 2 Object Library.

Спасибо всем.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 149

    TopList  
cron