Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/25: Рейтинг темы: голосов - 25, средняя оценка - 4.56
0 / 0 / 0
Регистрация: 08.03.2013
Сообщений: 5
1

Что именно возвращает функция Selection.Find из библиотеки Word?

04.10.2014, 20:04. Показов 5123. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Кто-нибудь может подсказать что именно возвращает функция appWd.Selection.Find ?
И как запрограммировать какое-либо действие в случае, если соответствие не найдено ?

Вот код, на котором пытаюсь это сделать, красным выделена неудачная попытка
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 Set sheet1 = Sheets("TABLES")
    Set wdFind = appWd.Selection.Find
    ClipT = "  "
    ClipEmpty.SetText ClipT
 
    
    prov = 0
    sheet1.Range("B1").Copy
    wdFind.Text = sheet1.Range("A1")
    Call NoFormatPaste
    sheet1.Range("B2").Copy
    wdFind.Text = sheet1.Range("A2")
    [COLOR="red"]If wdFind Is Nothing Then[/COLOR]
    prov = 0
    Else
    Call NoFormatPaste
    End If
Красным в итоге не выделилось, в общем была попытка сделать при помощи If wdFind Is Nothing, но не сработало
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.10.2014, 20:04
Ответы с готовыми решениями:

Работа метода Word.Selection.Find при поиске в документе Word
Дорого времени суток! никак не могу разобраться в механизме работы range.find Запускаю: ...

Функция find, которая выполняет поиск по _id в массиве пользователей и возвращает новый массив
id находящийся в users.js { "_id": "5a58d21ccb3c3f594dab0afc",

Функция из dll библиотеки возвращает неправильное значение
Добрый день. Возникла проблема при использовании dll библиотеки, при котором функция из не взятая...

Определить, что именно возвращает php-скрипт и расшифровать эти данные
Есть скрипт ссылка и возвращает он вот это (каждый раз разное) чU—иЋрВ К~ПbUйМ∞^Hр|...

4
4135 / 2239 / 940
Регистрация: 01.12.2010
Сообщений: 4,624
04.10.2014, 20:30 2
tsaplya, Возвращает Word.Find, но, на самом деле это не важно, ибо поиск в Word'e осуществляется немного по другому.

Visual Basic
1
2
3
4
5
6
If appWd.Selection.Find.Execute( _
   FindText:="Заказ", MatchWholeWord:=False) = True Then
   MsgBox "Слово <Заказ> (возможно частично) найдено"
Else
   MsgBox "Слово <Заказ> не найдено"
End If
Visual Basic
1
2
3
4
5
6
7
8
9
With appWd.Selection.Find
     .MatchWholeWord = False
     .Text = "Заказ"
     If .Execute = True Then
        MsgBox "Слово <Заказ> (возможно частично) найдено"
     Else
        MsgBox "Слово <Заказ> не найдено"
     End If
End With
Более подробную информацию можно получить в офисной справке, ибо у этого метода куча аргументов, а в справке масса примеров
1
0 / 0 / 0
Регистрация: 08.03.2013
Сообщений: 5
04.10.2014, 22:44  [ТС] 3
Спасибо большое !
А не подскажете еще, почему на строчку
Visual Basic
1
2
If appWd.Selection.Find.Execute( _
    FindText:=sheet1.Range("A11"), MatchWholeWord:=False) = True Then
ругается ? Ошибка type mismatch
Сначала ругался на 8ю клетку, после переделывания всех полей в текстовые - перестал ругаться на 8ю, но начал на 11ю. И там, и там числа в ячейках.
0
4135 / 2239 / 940
Регистрация: 01.12.2010
Сообщений: 4,624
04.10.2014, 23:22 4
Такая ошибка может возникнуть, если в ячейке [A11] будет наличествовать значение ошибки, типа #Н/Д и т.д., с числами же - такого происходить не должно … однако на всякий случай можно попробовать CStr(Sheet1.Range("A11"))

P.S. Если в ячейках числа, то не рекомендую устанавливать текстовый формат, иначе, потом возникнут проблемы, например с банальным суммированием, типа =СУММ(A:A)
1
4135 / 2239 / 940
Регистрация: 01.12.2010
Сообщений: 4,624
04.10.2014, 23:49 5
P.S. На всякий случай присобачил файлы для тестирования
Вложения
Тип файла: zip Sample_for_tsaplya.zip (8.6 Кб, 15 просмотров)
1
04.10.2014, 23:49
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.10.2014, 23:49
Помогаю со студенческими работами здесь

Значение Selection.Find.Found не обнуляется
отрезок кода, который ищет определенной слов в тексте, и если находит, выделяет. проблема в том,...

Поиск слова VBA (Do While Selection.Find.Found)
Добрый день! Подскажите, пожалуйста! Есть код Sub процесс_поиска_позиций_РЭ() Dim slovo As...

Функция find принимает вектор и число, которое ищется и возвращает указатель на найденное число
здравствуйте. подскажите есть вот такая задача //Написать ф-цию find, которая принимает вектор и...

Создать функцию, которая возвращает массив в обратном порядке. Именно возвращает
Не могу никак создать функцию.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru