Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Поиск первого значения в столбце - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Поиск первого значения в столбце (Макросы/Sub)
Поиск первого значения в столбце
Sashagor1982 Дата: Понедельник, 22.02.2016, 19:59 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 160
Репутация: 12 ±
Замечаний: 0% ±

Excel 2007
Здравствуйте уважаемые форумчане. Суть вопроса в следующем имеется лист с заполненным столбцом, в заполненном столбце необходимо найти номер первой строки содержащей определенное значение, например "собака" я это сделал с помощью цикла:
[vba]
Код
Sub XXX()
nado = "собака"
    For i = 1 To Cells(Rows.Count, 6).End(xlUp).Row
        If Range("F" & i).Value = nado Then
            a = i
            Exit For
        End If
    Next
MsgBox a
End Sub
[/vba]
есть ли другой более быстрый способ,желательно без цикла. Заранее спасибо..
К сообщению приложен файл: 1140.xls(36Kb)


Сообщение отредактировал Sashagor1982 - Понедельник, 22.02.2016, 20:00
 
Ответить
СообщениеЗдравствуйте уважаемые форумчане. Суть вопроса в следующем имеется лист с заполненным столбцом, в заполненном столбце необходимо найти номер первой строки содержащей определенное значение, например "собака" я это сделал с помощью цикла:
[vba]
Код
Sub XXX()
nado = "собака"
    For i = 1 To Cells(Rows.Count, 6).End(xlUp).Row
        If Range("F" & i).Value = nado Then
            a = i
            Exit For
        End If
    Next
MsgBox a
End Sub
[/vba]
есть ли другой более быстрый способ,желательно без цикла. Заранее спасибо..

Автор - Sashagor1982
Дата добавления - 22.02.2016 в 19:59
RAN Дата: Понедельник, 22.02.2016, 20:01 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4277
Репутация: 829 ±
Замечаний: 0% ±

2010
Find


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеFind

Автор - RAN
Дата добавления - 22.02.2016 в 20:01
Sashagor1982 Дата: Понедельник, 22.02.2016, 21:34 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 160
Репутация: 12 ±
Замечаний: 0% ±

Excel 2007
И что с ним делать?
 
Ответить
СообщениеИ что с ним делать?

Автор - Sashagor1982
Дата добавления - 22.02.2016 в 21:34
StoTisteg Дата: Понедельник, 22.02.2016, 21:37 | Сообщение № 4
Группа: Авторы
Ранг: Ветеран
Сообщений: 541
Репутация: 45 ±
Замечаний: 0% ±

Excel 2010
Применять.


Проверь всё. ThisWorkbook.Save. On Error Resume Next.
 
Ответить
СообщениеПрименять.

Автор - StoTisteg
Дата добавления - 22.02.2016 в 21:37
Kuzmich Дата: Понедельник, 22.02.2016, 21:49 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 215
Репутация: 40 ±
Замечаний: 0% ±

Excel 2003
[vba]
Код

Sub Sobaka()
Dim SobakaRow As Long
  SobakaRow = Columns(6).Find("собака", , xlValues, xlWhole).Row
End Sub
[/vba]
 
Ответить
Сообщение[vba]
Код

Sub Sobaka()
Dim SobakaRow As Long
  SobakaRow = Columns(6).Find("собака", , xlValues, xlWhole).Row
End Sub
[/vba]

Автор - Kuzmich
Дата добавления - 22.02.2016 в 21:49
StoTisteg Дата: Понедельник, 22.02.2016, 21:51 | Сообщение № 6
Группа: Авторы
Ранг: Ветеран
Сообщений: 541
Репутация: 45 ±
Замечаний: 0% ±

Excel 2010
Рекламная пауза!

Макрорекордер
1) железный и не ворчит
2) безропотно пропишет Вам все заказанные параметры
3) сделает всё это, не бегая до гадалки, а значит, куда быстрее yes


Проверь всё. ThisWorkbook.Save. On Error Resume Next.
 
Ответить
СообщениеРекламная пауза!

Макрорекордер
1) железный и не ворчит
2) безропотно пропишет Вам все заказанные параметры
3) сделает всё это, не бегая до гадалки, а значит, куда быстрее yes

Автор - StoTisteg
Дата добавления - 22.02.2016 в 21:51
Sashagor1982 Дата: Понедельник, 22.02.2016, 22:22 | Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 160
Репутация: 12 ±
Замечаний: 0% ±

Excel 2007
Kuzmich, спасибо..
 
Ответить
СообщениеKuzmich, спасибо..

Автор - Sashagor1982
Дата добавления - 22.02.2016 в 22:22
sv2014 Дата: Вторник, 23.02.2016, 04:15 | Сообщение № 8
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 156
Репутация: 37 ±
Замечаний: 0% ±

Excel 2013
Sashagor1982,доброго времени суток, попробуйте,например, так,кнопка test

[vba]
Код
Sub XXX1()
    Dim x As Object, nado$: nado = "собака"
    Set x = Range("F1:F" & Cells(Rows.Count, 6).End(xlUp).Row).Find(nado)
  If Not x Is Nothing Then MsgBox x.Row: Exit Sub
End Sub
[/vba]
К сообщению приложен файл: example_23_02_2.xls(37Kb)
 
Ответить
СообщениеSashagor1982,доброго времени суток, попробуйте,например, так,кнопка test

[vba]
Код
Sub XXX1()
    Dim x As Object, nado$: nado = "собака"
    Set x = Range("F1:F" & Cells(Rows.Count, 6).End(xlUp).Row).Find(nado)
  If Not x Is Nothing Then MsgBox x.Row: Exit Sub
End Sub
[/vba]

Автор - sv2014
Дата добавления - 23.02.2016 в 04:15
Sashagor1982 Дата: Вторник, 23.02.2016, 16:39 | Сообщение № 9
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 160
Репутация: 12 ±
Замечаний: 0% ±

Excel 2007
sv2014, спасибо.
 
Ответить
Сообщениеsv2014, спасибо.

Автор - Sashagor1982
Дата добавления - 23.02.2016 в 16:39
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Поиск первого значения в столбце (Макросы/Sub)
Страница 1 из 11
Поиск:

Яндекс цитирования
© 2010-2016 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!