![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Форумчанин
Регистрация: 27.10.2009
Сообщений: 277
|
![]()
Для изготовления индексов (именных и пр.), которые помещают в конце бумажных книжек, нужен макрос, который бы выбирал все слова длиннее одной буквы (для отсева предлогов и союзов), начинающиеся с заглавных букв (кириллицей и латиницей) и соединял их в список, а потом удалял дубликаты и выстраивал по алфавиту.
Чтобы на выходе получалось так: Амстердам Петров Петрову Скорость Широкий и т.д. Кроме того пригодилась бы в макросе опция отсева слов из заданного списка: "Мы, Однако, Где" и т.п. Хотя это не обязательно, можно и ручками почистить такое. |
![]() |
![]() |
![]() |
#2 | |
Форумчанин
Регистрация: 24.12.2012
Сообщений: 776
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 27.10.2009
Сообщений: 277
|
![]()
нет, сотня - максимум две.
но вполне устроит, если просто выкинуть два десятка самых ходовых местоимений и предлогов у меня уже есть подобный макрос, но он ограничен по числу слов в индексе несколькими тысячами слов, поэтому не годится даже для средних по размерам книг, к тому же иногда глючит Последний раз редактировалось caute; 23.03.2013 в 17:38. |
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 24.12.2012
Сообщений: 776
|
![]()
caute, значит эти слова должны где-то храниться. Ведь в сам код не станешь же записывать 100 слов.
Слова можно поместить в книгу "Excel". Мне кажется, что это самый удобный способ. Другие варианты: в текстовый файл (расширение txt), в Word-документ. Как вы хотите? |
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 27.10.2009
Сообщений: 277
|
![]()
годится любой вариант, но лично мне приятнее файлик doc
![]() чтоб его можно было обрабатывать другими макросами Word (мало ли, вдруг понадобится) |
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 27.10.2009
Сообщений: 277
|
![]()
а можно и в код записать, но не в тело макроса, а таким связанным макространицем (не знаю, как это правильно назвать, но видел такое в "Методичке")
|
![]() |
![]() |
![]() |
#7 | |
Форумчанин
Регистрация: 24.12.2012
Сообщений: 776
|
![]()
Пункт 1
Цитата:
А в Excel-книге всё навиду: вот таблица, заноси в неё данные и всё готово. Нюансы, конечно тоже свои есть - знания и опыт работы в Excel нужен, чтобы учесть какие-нибудь детали, но по идее должно всё гладко пройти. Пункт 2 caute, хорошую идею подали (мне такое в голову не приходило): использовать стандартные модули, как текстовые файлы (имеются ввиду текстовые файлы с расширением "txt"). Ведь стандартный модуль, по идее, - это ведь обычный текстовый файл, который содержит код, который компьютер читает и делает действия. В выложенном документе я использовал предложенный вами вариант. Пункт 3
|
|
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 27.10.2009
Сообщений: 277
|
![]()
исключаемые слова писать в Module_2_list на место "СловоОдин" да?
а что за слова в самом документе: WordOnewordTwo и т.д.? |
![]() |
![]() |
![]() |
#9 | |
Форумчанин
Регистрация: 24.12.2012
Сообщений: 776
|
![]()
Пункт 1
Цитата:
Код:
Параметр "Item" в нашем случае никакого смысла не имеет - это просто необходимость, чтобы сделать команду "myDictionary_1.Add". В коде я указал букву "A", а сейчас попробовал и оказывается вообще можно ничего не указывать. Пункт 2 Слова в документе, который я выложил, я использовал для тестирования кода. Не обращайте внимание на эти слова. |
|
![]() |
![]() |
![]() |
#10 |
Форумчанин
Регистрация: 27.10.2009
Сообщений: 277
|
![]()
Открыл макрос, скопировал его содержимое в normal.dot, при запуске выдает ошибку.
Compile error: Variable not defined вот тут подсвечивает: Call ModuleList.Procedure_1(myDictionary _1) видимо, что-то сделал не так |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Сформировать последовательность заглавных букв | Anka1101 | Помощь студентам | 24 | 14.02.2013 17:34 |
вывести слова начинающиеся с латинских букв | alex(21) | Общие вопросы C/C++ | 5 | 08.03.2012 19:11 |
Поиск заглавных букв | sergei64_89 | SQL, базы данных | 1 | 08.10.2011 09:25 |
Сортировка заглавных и строчных букв | Ronk | Общие вопросы C/C++ | 6 | 03.03.2010 19:44 |
процедура, которая выводит все слова, начинающиеся с согласных букв латинского алфавита. | sergeyfsd | Паскаль, Turbo Pascal, PascalABC.NET | 6 | 21.02.2008 22:29 |