powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Find с конца текста
25 сообщений из 44, страница 1 из 2
Find с конца текста
    #37242523
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как Финдом при помощи ВБА делаем поиск в Ворде с конца к началу документа, спасибо
...
Рейтинг: 0 / 0
Find с конца текста
    #37242531
Ципихович Эндрю,
пример из справки VBA (Word):
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
' The following example searches backward through the document for the word "Microsoft." If the word is found, it's automatically selected.

Selection.Collapse Direction:=wdCollapseStart
With Selection.Find
    .Forward = False
    .ClearFormatting
    .MatchWholeWord = True
    .MatchCase = False
    .Wrap = wdFindContinue
    .Execute FindText:="Microsoft"
End With


Покупайтенаших слонов!(с)
Читайте справку - источник знаний.
...
Рейтинг: 0 / 0
Find с конца текста
    #37242548
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробуй камнем,

не понял юмора:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
'пример поиска в обратном направлении в документе слова "Microsoft"
'если слово найдено, оно выделяется
'Selection     Collapse     Direction
'Выбор         Свернуть     Направление
Selection.Collapse Direction:=wdCollapseStart
With Selection.Find
    'Forward - Переслать
    .Forward = True 'False
    .ClearFormatting
    .MatchWholeWord = True
    .MatchCase = False
    .Wrap = wdFindContinue
    .Execute FindText:="Microsoft"
End With

Forward = False
или
Forward = True
выделяет первое слово
...
Рейтинг: 0 / 0
Find с конца текста
    #37242549
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрю,

ну въехал, надо Selection.Collapse Direction:=wdCollapseEnd
А зачем строку .Forward = False выделели и что она даёт при фальше и при труе
...
Рейтинг: 0 / 0
Find с конца текста
    #37242559
Ципихович Эндрюну въехал, надо Selection.Collapse Direction:=wdCollapseEndЕсли верить Майкрософту, то не надо (пример привёл "один-в-один", единственное, что себе позволил - выделить цветом строку).


Код: plaintext
1.
2.
' .Forward = True ' поиск "вперёд"
' .Forward = False ' поиск "назад"

ОФФ: Ворд нашёлся ? :)
...
Рейтинг: 0 / 0
Find с конца текста
    #37242574
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробуй камнем, спасибо он у меня и не терялся, просто он глючный, долго рассказывать, кое что пропускает, кое что нет, совсем другая история, лучше не рассказывать - на два десятка топиков хватит , скоро собираюсь на 10 ку переходить не могу качнуть руссификатор, не знаете где есть? правда подсказки качнул всплывающие, думаю так и англицкий можно изучить
...
Рейтинг: 0 / 0
Find с конца текста
    #37242595
Ципихович Эндрюскоро собираюсь на 10 ку переходить не могу качнуть руссификатор, не знаете где есть?Не заню.
ЗЫ: а зачем русификатор? Покупаете RU, и не мучаете себе мозг.
...
Рейтинг: 0 / 0
Find с конца текста
    #37242600
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробуй камнем, уже добрые люди подарили
...
Рейтинг: 0 / 0
Find с конца текста
    #37242691
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Указываю в поиске
'ищем слово "Сут" строго согласно регистра букв
'за ним пробел, за ним любое количество знаков - "*", за ними точка и пробел
.Text = "Сут *. "
жду что выделит «Сут 360. »
Но выделяет не то, а больше
Сут 360. Ныавыавымавыававыавыавыпадение
2. Т
почему???
...
Рейтинг: 0 / 0
Find с конца текста
    #37242702
Ципихович Эндрю,
потому что алгоритм поиска жадный .
...
Рейтинг: 0 / 0
Find с конца текста
    #37242717
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробуй камнем, у меня не было регулярных выражений, обычный Вордовский поиск, то есть Вордом всегда жадность будет? Намекаете регулярки использовать, опять же тогда как с конца??
...
Рейтинг: 0 / 0
Find с конца текста
    #37242730
Сижу, никого не трогаю, примус починяю(с). Ни на что я не намекаю.

Ципихович Эндрюу меня не было регулярных выражений, обычный Вордовский поискУ "обычного Вордовский поиска" были.

ЗЫ: Вордовский поиск с использованием подстановочных знаков и направлении поиска "вперёд" ведёт себя как "не жадный".
Чем дальше, тем страннее(с)
...
Рейтинг: 0 / 0
Find с конца текста
    #37242737
Ципихович Эндрю,
попробуйте в качестве шаблона. Не факт, что поможет.
Код: plaintext
.Text = "<Сут[!.]@. "
...
Рейтинг: 0 / 0
Find с конца текста
    #37242763
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробуй камнем, ОК!!, спасибо взял на NB
...
Рейтинг: 0 / 0
Find с конца текста
    #37242770
Ципихович Эндрю,
оно хоть работает?
...
Рейтинг: 0 / 0
Find с конца текста
    #37242772
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробуй камнем, ну конечно, работает!! я в шоколаде
...
Рейтинг: 0 / 0
Find с конца текста
    #37243458
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ципихович Эндрюскоро собираюсь на 10 ку переходить не могу качнуть руссификатор, не знаете где есть?
Эндрю!
Останьтесь на 2003-м (Office11) - будет менее проблематично. Ибо вы даже вы не удосужились еще изучить объектную схему от 10, а лОмитесь на 13 (а там придется перечитать ВЕСЬ хелп заново)...
...
Рейтинг: 0 / 0
Find с конца текста
    #37243535
скукотища
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AndreTM,

а он не будет читать, он писать будет. Сюда.
...
Рейтинг: 0 / 0
Find с конца текста
    #37243987
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
лОмитесь на 13, неа лОмитесь на 14. Да и ломлюсь я, просто говорю же добрые люди подарили, кстати шоколад сполз у меня опять неувязка, когда есть "Сут 360.1 Ныавыавымавыававыавыавыпадение" надо чтобы выделялось "Сут 360.1 "
но попробую решить сам. Пока помощи не прошу
...
Рейтинг: 0 / 0
Find с конца текста
    #37244360
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне надо строго в начале слова, строго с большой буквы "Сут"
пробел
любое количество знаков
точка
пробел

Строго первое совпадение с конца документа
Я конечно попробовал, старался, почти тоже самое, что гречку от проса перебирать:
Решил всё же по взрослому сделать
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Dim reg As Object
Set reg = CreateObject("VBScript.RegExp")
'искать по всему тексту, если False (по-умолчанию) - будет найдено только первое совпадение
reg.Global = True
'текст, который ищем
'?????????????????????
reg.Pattern = "Сут "
'учитывать регистр символов
reg.IgnoreCase = False
TempStr = ActiveDocument.Range
MsgBox$ TempStr
но увы...Прошу помощи
...
Рейтинг: 0 / 0
Find с конца текста
    #37244559
Ципихович Эндрю,
надо чтобы выделялось "Сут 360.1 "
Мне надо строго в начале слова, строго с большой буквы "Сут"
пробел
любое количество знаков
точка
пробел
Неувязка.
В первой цитате заканчивается на "единица пробел"
Во второй - "точка пробел"
Где правда?
...
Рейтинг: 0 / 0
Find с конца текста
    #37244644
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробуй камнем,
могут быть варианты
Сут 63.1. Назначение
Сут 63. Обстоятельства
то есть строго точка пробел в конце
...
Рейтинг: 0 / 0
Find с конца текста
    #37246212
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
осталась одна строка кода: .Pattern = "Сут " - помогите изменить

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Sub Макрос1()
'Tools - References... - Microsoft VBScript - Regular Expressions 5.5
Dim РегВыражения As New VBScript_RegExp_55.RegExp
Dim Текст As String
Dim Найденное As VBScript_RegExp_55.MatchCollection
Текст = ActiveDocument.Range
With РегВыражения
    'искать по всему тексту, если False (по-умолчанию) - будет найдено только первое совпадение
    .Global = True
    'текст, который ищем
    .Pattern = "Сут "
    'учитывать регистр символов
    .IgnoreCase = False
    Set Найденное = .Execute(sourceString:=Текст)
End With
'Вот так можно определить первый с конца найденный элемент.
'(-1, т.к. первый элемент коллекции нумеруется с нуля).
Debug.Print Найденное(Найденное.Count -  1 )
End Sub
...
Рейтинг: 0 / 0
Find с конца текста
    #37246488
Ципихович Эндрю,
может попробуйете ещё раз с "простым вордовским поиском"?
Код: plaintext
.Text = "<Сут [! ]@. "
'Сут' (в начале слова)
'пробел'
'один или более знаков отличных от пробела ' ( несколько сужает Ваше 'любое количество знаков' )
'точка'
'пробел'

ЗЫ: с регулярными выражениями потренируйтесь сами .
ЗЗЫ: RegExp для поиска последнего вхождения будет на больших текстах медленнее вордовского Find "назад".
...
Рейтинг: 0 / 0
Find с конца текста
    #37247830
Ципихович Эндрю
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробуй камнем, ОК!! работает
попытался я на досуге поизучать регулярки
просо от гречки ....
как на зло надо найти строку "\*MERGEFORMAT"
где между "\" и "*" и "M" может не быть пробелов, может быть несколько пробелов
Больше всего труднсть составляют
знаки используемые в регулярках как служебные - "\" и "*"
Подскажите, пжл
...
Рейтинг: 0 / 0
25 сообщений из 44, страница 1 из 2
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Find с конца текста
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]