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

Как найти самую позднюю дату в массиве?

12.06.2017, 16:57. Показов 4872. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер! Уважаемые форумчане, Помогите пожалуйста найти самую позднюю дату в массиве.
Этим кодом получаю массив с датами: -
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Sub Max_Date()
Dim bb(), NpRow As Long, Data_podtv As Date
   zakaz = "Тут"
   With Sheets(1)
       Podtv = .Range("A1:B10")
   End With
   ReDim bb(1 To UBound(Podtv))
        For PRow = 1 To UBound(Podtv)
    If CStr(zakaz) = Podtv(PRow, 2) Then
           NpRow = NpRow + 1
       bb(NpRow) = Podtv(PRow, 1)    'Дата
    End If
        Next PRow
 
'Определить самую позднюю дату в массиве
Data_podtv = Application.Max(bb(NpRow))
 
End Sub
Этой строкой
Visual Basic
1
Data_podtv = Application.Max(bb(NpRow))
, дату получаю, но это просто самая последняя дата в массие. Массив не сортирован, и потому последняя дата может быть не самой поздней.
Как найти в полученном массиве самую позднюю дату?
Вложения
Тип файла: xls Самая поздняя дата.xls (30.5 Кб, 7 просмотров)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
12.06.2017, 16:57
Ответы с готовыми решениями:

Найти строку, содержащую самую позднюю осеннюю дату
Дан строковый файл, содержащий даты в формате: (12\12\2012). Найти строку, содержащую самую позднюю осеннюю дату. Если даты с требуемым...

Найти самую позднюю дату
Дан файл, содержащий различные даты. Каждая дата — это число, месяц и год. Найти самую позднюю дату. Что не так в программе? Файл не...

Найти самую позднюю дату
Дан файл F.Содержащий различные даты. Каждая дата- это число ,месяц и год . Найти самую позднюю дату

2
880 / 559 / 291
Регистрация: 21.11.2012
Сообщений: 1,554
12.06.2017, 17:50
Sasanik,

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Sub max_date1()
    
    Dim rng As Range
    Dim data As Date
        
    Set rng = Range("A1:B10")
    data = rng.Cells(1, 1)
    
    For i = 2 To rng.Rows.Count
        If rng.Cells(i, 1) > data Then
            data = rng.Cells(i, 1)
        End If
    Next i
    
    MsgBox data
End Sub
0
3 / 3 / 0
Регистрация: 12.12.2015
Сообщений: 174
12.06.2017, 19:54  [ТС]
hamin, Спасибо! , но это не совсем то, что требуется. Диапазон не есть массив. Я отбираю в массив даты по условию из диапазона, а потому
Visual Basic
1
Cellss(1,1)
всегда будет плавать и сравнение с ней не корректно. Нужно именно среди дат в отобранном массиве найти самую позднюю.

Добавлено через 1 час 13 минут
Всем спасибо! Решение нашел. Преобразовав дату перед добавлением в массив в число.
Visual Basic
1
bb(NpRow) = CDbl(Podtv(PRow, 1))    'Дата
. Потом нахожу максимальное число и показываю его как дату. Вот полный код с изменениями: -
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Sub Max_Date()
Dim bb(), NpRow As Long, Data_podtv As Date
   zakaz = "Тут"
   With Sheets(1)
       Podtv = .Range("A1:B10")
   End With
   ReDim bb(1 To UBound(Podtv))
        For PRow = 1 To UBound(Podtv)
    If CStr(zakaz) = Podtv(PRow, 2) Then
           NpRow = NpRow + 1
      bb(NpRow) = CDbl(Podtv(PRow, 1))    'Дата
    End If
        Next PRow
 
'Определить самую позднюю дату в массиве
Data_podtv = Application.Max(bb)
MsgBox Data_podtv
End Sub
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
12.06.2017, 19:54
Помогаю со студенческими работами здесь

Найти самую позднюю / раннюю дату
Дан файл с датами. Найти в файле самую позднюю дату (/а для другого варианта самую раннюю дату (отдельная задача))

Файлы записей. Найти самую позднюю дату
составить программы с помощью которых: -сформировать файл из записей, содержащих различные даты -найти самую позднюю дату.

Дан файл,содержащий различные даты.Найти самую позднюю дату.
Дан файл,содержащий различные даты.Найти самую позднюю дату.

Файл записей содержит различные даты. Найти самую позднюю дату
Нужны 2 программы: 2) Составить программы, с помошью которых: -сформировать файл из записей, содержащих различные даты; -найти...

Записи: Найти год с наименьшим номером, все весенние даты, самую позднюю дату
Дан файл f, содержащий различные даты. Каждая дата это число месяц и год. Найти: 1) год с наименьшим номером 2) Все весенние даты 3)...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru