Collection Words

Программирование на Visual Basic for Applications
shyko
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 17.01.2005 (Пн) 0:19

Collection Words

Сообщение shyko » 17.01.2005 (Пн) 0:26

Как получить коллекцию Words, в которой отсутствуют знаки пунктуации и разделители?

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 17.01.2005 (Пн) 0:30

Так она такая и есть, в ней не бывает этих всех никогда.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

shyko
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 17.01.2005 (Пн) 0:19

Сообщение shyko » 17.01.2005 (Пн) 0:35

Не знаю, может нужно какие-то свойства дополнительно установить, т.к. даже в хелпе:

Words - returns a Words collection that represents all the words in a range, selection, or document. Read-only.


Note Punctuation and paragraph marks in a document are included in the Words collection.

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 17.01.2005 (Пн) 0:40

Вот всегда так - в разных частях мануала повествуются разные вещи :(

Поскольку words только для чтения, и поскольку ты не можешь её создать, то остаётся только любить её такой, какая она есть.
Если не хочецца, можно создать collection, в которую запихать каждый words.item, который не является пунктуацией...
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

shyko
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 17.01.2005 (Пн) 0:19

Сообщение shyko » 17.01.2005 (Пн) 1:02

В Word возможно получение количества актуальных слов (без знаков пунктуации и разделителей) через диалог (from VBA help):

Set temp = Dialogs(wdDialogToolsWordCount)
' Execute the dialog box in order to refresh its data.
temp.Execute
numWords = temp.Words

Значит, в принципе, можно получить с помощью Word коллекцию этих слов (или что-то похожее).

Не может быть, чтобы Word вел подсчет перебором:
if (Not ... .Words(i) Eqv ".") And (Not ... .Words(i) Eqv ",") And ...


Вернуться в VBA

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

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

    TopList