powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Предыдущая последняя дата
4 сообщений из 4, страница 1 из 1
Предыдущая последняя дата
    #38851992
Фотография Stepler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВСЕХ С ПРАЗДНИКОМ!!!
поискал, но что-то нигде не нашел...
есть в экселе листы с датами и значениями по датам. Нужно найти значения по соответствующей дате на разных листах И если такой даты нет, то взять последнюю перед ней. Начинаю искать с конца, т.к. значения искомой даты может быть несколько, и мне нужна из них последняя:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
l: Sheets("Прих").Activate
 On Error GoTo ennd
 Columns("a:a").Find(What:=Dt, After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
        xlPart, SearchOrder:=xlByRows, SearchDirection:=xlPrevious, MatchCase:= _
        False, SearchFormat:=False).Activate
RSPO = ActiveCell().Row 'строка искомого Прих
SPO = Cells(RSPO, 5) 'сальдо искомого Прих
ennd: Dt = Format(Dt - 1, "00.00") ' число.месяц поиска
Dt = "<" & Dt ' Попробовал как в фильтре, но не проходит поиск   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
GoTo l


Подскажите, плз, как прошаманить?
Спасибо
Stepler (щёлк-щёлк!!)

Код: plaintext
 P.S.Чтобы наступила смерть - необходима жизненная сила !!!  
...
Рейтинг: 0 / 0
Предыдущая последняя дата
    #38852247
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Stepler,
если данные отсортированы, то, думаю, лучше использовать VLOOKUP с последним параметром ИСТИНА
...
Рейтинг: 0 / 0
Предыдущая последняя дата
    #38852350
Фотография Stepler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HandKot,

Спасибо, но я уже решил с применением фильтра и преобразованием даты в число:
Код: vbnet
1.
2.
3.
Dt = Format(Dt, "00000")
Columns("a:a").AutoFilter Field:=ActiveCell.Column, Criteria1:="<" & Dt
Range("a" & Rows.Count).End(xlUp).Select
...
Рейтинг: 0 / 0
Предыдущая последняя дата
    #38854346
Фотография Stepler
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кому интересно:
Немного упростил и ускорил...
ПОИСК СТРОКИ ПРЕДЫДУЩЕЙ ПОСЛЕДНЕЙ ДАТЫ от ИНТЕРЕСУЮЩЕЙ по столбцу А
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
EndRow = Range("A1").End(xlDown).Row
Dim Sn As Range
For Each Sn In Range("A2:A" & EndRow)
    r = Sn.Row
    ss = Format(Sn, "00000")
               If Format(Sn, "00000") - Format(ИНТЕРЕСдата, "00000") > 0 Then
       r = Sn.Row - 1
    GoTo l
    End If
Next
l:
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Предыдущая последняя дата
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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