Кнопка в Word-е

Программирование на Visual Basic for Applications
FLAGER
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 67
Зарегистрирован: 12.09.2005 (Пн) 13:49

Кнопка в Word-е

Сообщение FLAGER » 12.09.2005 (Пн) 14:01

Я новичок в Бэйсике. :( :cry:
Но у меня к вам просьба, товарищи, как к более опытным в програмировании.
Возможно ли в WordBasic-е написать такую програму, чтобы в Word-е создать кнопку, при нажатие на которую две строчки выделенного текста будут меняться местами: 1-я станет 2-ой, а 2-я - первой. Понимаете, что я имею в виду?
Это задание для кого-то, возможно будет простым, но для меня пока что очень сложное - просто не знаю, с чего начать, но это очень интересно, и мне это очень нужно. :!:
Может ли кто-то мне помочь?

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 12.09.2005 (Пн) 14:03

Строки -- это абзацы?
Lasciate ogni speranza, voi ch'entrate.

VVitafresh
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1641
Зарегистрирован: 12.05.2005 (Чт) 14:44
Откуда: Херсон, UA

Сообщение VVitafresh » 12.09.2005 (Пн) 21:04

Проще всего для тебя, наверное, выделить две нужные тебе строки. Потом зайди в меню Сервис -> Макрос -> Начать запись, задай имя макросу. Теперь сделай все, как если бы ты работал в Word'e вручную. Останови запись макроса и по Alt+F11 зайди в редактор и посмотри текст полученного макроса.
Что-то типа этого (хотя можно совсем по-другому):
Код: Выделить всё

    Selection.MoveDown Unit:=wdLine, Count:=1
    Selection.MoveUp Unit:=wdLine, Count:=1
    Selection.HomeKey Unit:=wdLine, Extend:=wdExtend
    Selection.Cut
    Selection.TypeBackspace
    Selection.HomeKey Unit:=wdLine
    Selection.PasteAndFormat (wdPasteDefault)
    Selection.TypeParagraph

Макрос можешь назначить комбинации клавиш, кнопке и т.д.

FLAGER
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 67
Зарегистрирован: 12.09.2005 (Пн) 13:49

Сообщение FLAGER » 13.09.2005 (Вт) 7:52

alibek писал(а):Строки -- это абзацы?
Нет строки - это строки (lines - англ.)

2VVitafresh: За подсказку спасибо, пошел разбираться...

FLAGER
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 67
Зарегистрирован: 12.09.2005 (Пн) 13:49

Сообщение FLAGER » 13.09.2005 (Вт) 15:55

Прога получилась так, как нужно - меняет рядки местами.
Только есть одно но: перед запуском макроса нужно поместить курсор на начало второго рядка, иначе не работает :(
Кто нибудь знает, как делать это автоматически? :cry:


Вернуться в VBA

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 86

    TopList  
cron