Здравствуйте. Возникла проблема, к которой уже второй день подбираюсь и не могу решить.
Честно скажу, с функциями эксель начала работать недавно, обычно нужную проблему решаю, разделив на этапы и ищу каждый отдельно. Но в этот раз как-то не срослось.
Для начала опишу общую цель.
Есть у меня список документов на перевод, которые люди начинают переводить такого-то числа, и заканчивают такого-то числа. Плюс есть общее количество страниц (столбец М) и автоматически высчитывается оставшееся количество (столбец Q). Правее оставшегося количества страниц идут столбцы по датам, в которые вносится количество страниц, переведённых в этот день. (скажем, напротив документа 1 (строка 5) за 1 число месяца переведено 5 стр, за 15 - 2, за 18 - 1, итого 21, к примеру). 1 число соответствует столбцу Т, 2- U и так далее. Соответственно, количество оставшихся страниц высчитывается по простой формуле, например, для пятой строки (ячейка Q5)
=М5-СУММ(T5:AX5).
Собственно, важно, чтобы в таких условиях дата окончания перевода заполнялась автоматически. В целом, достаточно понятно, поставила через функцию ЕСЛИ, что ячейка в принципе заполняется только, если число оставшихся страниц =0
Ну, дальше я подумала, что нужно найти последнюю заполненную ячейку, при условии, что количество оставшихся страниц =0. На этом сайте я нашла формулу: ПРОСМОТР(2;1/(T5:AX5>0);АДРЕС(1;СТОЛБЕЦ(T5:AX5))), объединила её с имеющейся функцией если, и у меня вполне нормально высчитывается последняя заполненная ячейка:
Код |
---|
=ЕСЛИ(Q5=0;ПРОСМОТР(2;1/(T5:AX5>0);АДРЕС(1;СТОЛБЕЦ(T5:AX5)));"")
|
Отсюда я думала посчитать номер столбца по функции СТОЛБЕЦ и отнять количество столбцов до 1 числа (помимо столбцов с датами есть ещё 19 столбцов), а затем использовать функцию ДАТА, чтобы взять это число в виде числа, а месяц и год поставить текущие. В целом получилось:
Код |
---|
=ЕСЛИ(Q5=0;ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ());ДЕНЬ(СТОЛБЕЦ(ПРОСМОТР(2;1/(T5:AX5>0);
АДРЕС(1;СТОЛБЕЦ(T5:AX5))))-19)));"") |
*для удобства перенесла на 2 строку, вообще всё вместе*
Но я наткнулась в итоге на проблему, что в качестве условия для функции СТОЛБЕЦ нельзя поставить формулу, даже если она вычисляет конкретную ячейку (или я что-то не так делаю?).
Пробовала *для сокращения* даже взять кусок =СТОЛБЕЦ(ПРОСМОТР(2;1/(T5:AX5>0);АДРЕС(1;СТОЛБЕЦ(T5:AX5)))), уже не вычисляется. Хотя, если вместо формулы взять конкретную ячейку или массив, то всё работает. Пробовала выносить расчёты функции ПРОСМОТР в отдельную ячейку, но не знаю, как из неё данные перенести в функцию СТОЛБЕЦ *он переносит ту ячейку, в которой функция считается, а не её значение, даже через функцию ЯЧЕЙКА пробовала...)
В общем, просьба, помогите, пожалуйста! Как видите, уже и искала всё подряд. Можно ли как-то формулу в функцию СТОЛБЕЦ внести или перенести значение другой ячейки? Или, может, есть какое-то другое решение моей проблемы.
В конце приложила пример с рандомными цифрами