|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
26.11.2013, 12:34 | #1 |
Пользователь
Регистрация: 21.11.2013
Сообщений: 11
|
Макрос на поиск (помочь переделать)!!
недавно писал по поводу поиска чисел в Worde и просил о помощи в написании макроса! все вроде хорошо, но задачу изменили:
нужен был поиск по числам во всем документе даже если они 2-х значные и т.д., но теперь добавилось условие! необходимо еще учитывать повторы чисел, т.е. если есть 2 и 2 то это не 2 числа, а одно! и если 2 и 23, то это 2 разных числа. код прошлого макроса: Sub Find1() Dim Счётчик As Long Счётчик = 0 With ActiveDocument.Range.Find .Text = "<[0-9]@>" .Replacement.Text = "" .Forward = True .Format = False .MatchCase = False .MatchWholeWord = False .MatchAllWordForms = False .MatchSoundsLike = False .MatchWildcards = True Do While (.Execute = True) {And (Счётчик < 500)} Счётчик = Счётчик + 1 Loop End With MsgBox ("найдено " & Счётчик & " чисел в тексте") End Sub в таких кавычках {} показана информация, которая была упразднена и не влияет особо на исход макроса (счетчик меньше 500, а если чисел больше, можно и без этого) просьба помочь!) нашел пример с пробелами (поиск 2 и более и замена их на 1) и пробовал его переделать, но не сумел переделать его в необходимый(вот он): Sub probeli() Selection.WholeStory Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFor matting With Selection.Find .Text = " {2;}" .Replacement.Text = " " .Forward = True .Wrap = wdFindAsk .Format = False .MatchCase = False .MatchWholeWord = False .MatchAllWordForms = False .MatchSoundsLike = False .MatchWildcards = True End With Selection.Find.Execute Replace:=wdReplaceAll Selection.MoveRight Unit:=wdCharacter, Count:=1 End Sub вот, что получилось из моих трудов и имея 2 разных макроса : Sub proba1() Dim Счетчик As Long Счетчик = 0 Selection.WholeStory Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFor matting With ActiveDocument.Range.Find .Text = "<[0-9]@>" .Replacement.Text = "" .Forward = True .Wrap = wdFindAsk .Format = False .MatchCase = False .MatchWholeWord = True .MatchAllWordForms = False .MatchSoundsLike = False .MatchWildcards = True Do While (.Execute = True) Счетчик = Счетчик + 1 Loop End With MsgBox ("Найдено " & Счетчик & " чисел в тексте") Selection.MoveRight unit:=wdCharacter, Count:=1 End Sub |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Кто может помочь переделать существующий код, изменить буквы на КАМ | Enf0s | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 0 | 04.05.2012 15:22 |
Переделать макрос | semen083 | Microsoft Office Excel | 8 | 02.04.2011 11:39 |
Переделать макрос экселя под аксесс | staniiislav | Microsoft Office Excel | 5 | 10.12.2010 10:16 |
Переделать макрос. | Дмитрий Фукс | Microsoft Office Excel | 6 | 12.05.2010 09:10 |
Прошу помочь переделать.Код внутри.С++ | BackSlash | Помощь студентам | 1 | 10.01.2010 20:36 |