Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Access
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.05.2011, 12:36   #1
Sergey112233
Пользователь
 
Регистрация: 19.12.2010
Сообщений: 82
По умолчанию Поиск "снизу - вверх"

Уважаемые форумчане!
Есть перечень номеров
Таблица1
Номер
1111
6666
3333
4444
5555
3333
3333

Задается номер, по которому на форме нужно найти последнюю запись (последнюю группу записей).
Например, при поиске записи с номером 5555 – находим ее как единственную и последнюю.
при поиске записи с номером с номером 3333 - находим группу записей – только две последних записи.
Для реализации использую поиск снизу вверх. Когда запись одна, все работает. А когда записей две (упомянутый вариант группы с номером 3333), то есть вопросы…

Код:
Private Sub Кнопка2_Click()
Dim rst As DAO.Recordset
 Dim iValue As String
Dim strCriteria As String

    iValue = InputBox("Введите номер:", "Ввод")
strCriteria = "[Номер] ='" & iValue & "'"
Set rst = Me.RecordsetClone
 rst.FindLast strCriteria
 Me.Bookmark = rst.Bookmark
 Me.Номер.Enabled = True
Me.Номер.SetFocus
    With rst
        .Edit                           ' Разрешает изменения.
        !Дата = Date   ' Изменяет дату в следующем столбце Дата.
        .Update                     ' Сохраняет изменения.
        .FindPrevious strCriteria   ' Находит следующее вхождение.
        .Edit                           ' Разрешает изменения.
        !Дата = Date  ' Изменяет дату в строке на одну выше и в следующем столбце Дата.
            .Update                     ' Сохраняет изменения.
        
      End With
End Sub
Вопрос в том, как получить значение найденного номера при rst.FindLast strCriteria
и значение найденного номера при .FindPrevious strCriteria. Чтобы сравнить их и, если значение в строке, стоящей выше равно 3333, то, продолжать поиск, а если не равно 3333, то прекратить поиск.

Последний раз редактировалось Sergey112233; 04.05.2011 в 13:10.
Sergey112233 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Текст "вверх ногами" . Возможно ли kzld Microsoft Office Excel 11 27.07.2010 23:40
Функция Pos, поиск снизу вверх RIO Общие вопросы Delphi 4 11.01.2010 23:17
Игра "Вперед и вверх" Sl1mka. Помощь студентам 21 16.10.2009 16:45
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04
"Транспортная задача", "Поиск решения" Perroman Microsoft Office Excel 3 12.12.2007 17:12