СообЧа > База Знаний > Программы > MS Word

Вопрос

Можно ли в макросе в Word создавать условия? Например, если следующий символ один, то …, а если другой, то …

Ответ

Конечно, можно. Можно использовать свойство Characters. Вот пример из Help'а:

char = Selection.Characters(1).Text
MsgBox "The first character is… " & char

В переменной char в данном случае будет первый символ из выделенной области, который во втором операторе выводится в сообщении на экран, но можно его и сравнить с нужным и с помощью If-структуры или условия в операторе цикла управлять выполнением макроса. Вместо единицы может быть другое целое число или целая переменная, которая будет указывать на порядковый номер символа в области.
Вот пример. Напечатает маленькие буквы латинского алфавита через пробел с места расположения курсора:

Sub Macro1()
For i = 1 To 26
Selection.TypeText Text:=Chr(Asc("a") + i — 1) & " "
Next
End Sub

Evgeny Agafonov

Используй оператор If… Then… Else… End If

Stroka = "влаимлыаилоыиплита"
If Instr(Stroka, "м") Then
MsgBox("Есть такая буква!")
Else
MsgBox("Облом.. :-(!")
End If

Конечно, если это то, что тебе нужно (в смысле, я тебя правильно понял :-)

FatCat



Copyright © 2000-2004 Сообщество Чайников
Контактная информация