Страница 1 из 2

Взять первое/последнее значение в БД Excel

Добавлено: 27 окт 2005, 12:04
Brat2005
Есть такая, типа база данных в Excel
Изображение

Можно ли используя формулы работы с базами данных (возможно, не только их) выбрать первое/последнее значение?
То есть, например, необходимо в пределах любой недели взять первое значение из столбца "значение" (первое, то есть с наименьшей датой) при условии, что столбец "сумма" заполнен? То же самое для последнего значения (с наибольшей) датой?..
Задается только номер недели (указывается в какой-л ячейке - в диапазоне критериев БД).

Добавлено: 27 окт 2005, 12:34
pashulka
Можно, но при использовании функций баз данных, в качестве критерия, необходимо указывать не только Номер недели, но Сумму <>

Добавлено: 27 окт 2005, 14:16
Brat2005
При чем тут сумма не равна чему-либо? Речь идет о том, как взять из диапазона определенной недели первое и последнее значение определенного столбца при условии, что есть ненулевые значения в другом столбце?
То есть, например, для недели 24 это будет соответственно 1,5 и 1,6.

Добавлено: 27 окт 2005, 14:36
pashulka
Да всё притом, вот цитата из Вашего предыдущего поста
"... при условии, что столбец "сумма" заполнен" © Brat2005

Добавлено: 27 окт 2005, 15:40
Brat2005
то, что сумма не равна чему-либо (чему?) ничего не дает, так как нет условия позволяющего хотя бы определить есть ли в строке столбца "сумма" значение больше 0 (по указанной неделе, конечно)

Добавлено: 27 окт 2005, 16:01
pashulka
Уточнение, с Вашей точки зрения, это ничего Вам не даёт, я например, могу определить есть ли в столбце "сумма" числовые значения > 0 0 (по указанной неделе, конечно), например используя функцию баз данных =БСЧЁТ()
Однако, должен Вам напомнить, что первоначально Вы выставили требование, гласящие, что столбец "сумма" должен быть заполнен. А вот чем он должен быть заполнен, не оговаривалось, отсюда и <>

Добавлено: 27 окт 2005, 16:05
Brat2005
все верно, определить есть ли значения в том или ином столбце, не проблема, но что это даст?
Как это можно использовать, для того, чтобы "взять" первое или последнее значение в совершенно ином столбце?

Добавлено: 27 окт 2005, 16:21
pashulka
=ДМИН(База_Данных;Поле;Критерий)

Поле - заголовок столбца в кавычках или номер столбца.

В Вашем случае, если исходить из представленного скриншота, достаточно указать "Дата" или 4, и Вы сможете получить значение, расположенное в конкретном столбце.

Добавлено: 27 окт 2005, 16:33
Brat2005
Так можно сделать, но я получу минимальное значение этого столбца указанной недели без учета каких-либо условий, а мне необходимо первое (значение из стобца "значение" по критерию номера недели), при условии, что в столбце "сумма" значение больше 0.

Добавлено: 27 окт 2005, 23:13
Avsha
По моему задача не типовая, потребует создания своих функций и использовния VBA.
Создайте две пользовательские функции (или одну):

First_Value=f1 (Range, НомерНедели, min)
Last_Value=f2 (Range, НомерНедели, max)

Пусть Range содержит и заголовки таблицы,
тогда выбираете сначала записи в столбце "Неделя" по аргументу НомерНедели
затем отбираете значения по столбцу "Дата", минимальное и максимальное,
при этом проверяете есть ли в слолбце "Сумма" какое-нибудь значение.