Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как правильно указать диапазон для поиска? / 6 сообщений из 6, страница 1 из 1
03.03.2008, 13:40
    #35166924
Dimon111
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно указать диапазон для поиска?
Делаю так:

Код: plaintext
1.
2.
3.
Cells.Find(What:=S, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate

Работает, но ищет по всему листу. Нужно чтоб искало в колонке A.

Делаю так:
Код: plaintext
1.
2.
3.
Range("A1:a1082").Find(What:=S, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate

Выдает ошибку 13 несовпадения типов. Как правильно задать диапазон для поиска?

Спасибо.
...
Рейтинг: 0 / 0
03.03.2008, 13:49
    #35166954
Dimon111
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно указать диапазон для поиска?
Прошу прощения. Поспешил.

Правильно будет так:

Код: plaintext
1.
2.
3.
4.
    Range("A1:A1082").Select
    Selection.Find(What:=S, After:=ActiveCell, LookIn:=xlFormulas, _
    LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
    MatchCase:=False, SearchFormat:=False).Activate

Но есть еще вопрос: как организовать цикл поиска с выводом результата на новый лист. Лист можно не отображать.

Спасибо.
...
Рейтинг: 0 / 0
03.03.2008, 14:31
    #35167118
VladConn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно указать диапазон для поиска?
В Help (F1) посмотрите пример с Find, FindNext. Вот там как раз пример организации поискового цикла.
...
Рейтинг: 0 / 0
03.03.2008, 16:16
    #35167469
Dimon111
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно указать диапазон для поиска?
Да нет там ничего. И мелкомягкие молчат...
...
Рейтинг: 0 / 0
03.03.2008, 16:39
    #35167588
VladConn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно указать диапазон для поиска?
Ну как же нет. Есть. Вот:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
FindNext Method
...
Example
This example finds all cells in the range A1:A500 that contain the value  2  and changes their values to  5 .

With Worksheets( 1 ).Range("a1:a500")
    Set c = .Find( 2 , lookin:=xlValues)
    If Not c Is Nothing Then
        firstAddress = c.Address
        Do
            c.Value =  5 
            Set c = .FindNext(c)
        Loop While Not c Is Nothing And c.Address <> firstAddress
    End If
End With
...
Рейтинг: 0 / 0
03.03.2008, 17:16
    #35167743
Dimon111
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно указать диапазон для поиска?
Да, работает. А я почему - то не нашел...

Огромное спасибо. Вопрос закрыт.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как правильно указать диапазон для поиска? / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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