Только сейчас увидел. Да уж, известие...
Соболезнования родным, близким.
Соболезнования родным, близким.
21.03.2024 19:43:14
Название темы: "СМЕЩ, которая трется и мешает". Шутка - если что .
Artem Fil, А может, ну его этот смещ, он летуч (и вообще трется:) ), и воспользоваться комбинацией ИНДЕКС+АГРЕГАТ?
Ну и более подходящий вариант названия темы: Выбор данных из таблицы по двум критериям. |
|||
|
15.11.2023 22:25:48
Еще подкину. =SUMPRODUCT(COUNTIFS($D$16:$D$112;"Округ "&A4;$E$16:$E$112;$A$17:$A$136);$B$17:$B$136) |
|||
|
15.11.2023 20:45:17
Для №4 массивно:
=SUM(SUMIF($A$17:$A$136;IF(TRIM(SUBSTITUTE($D$16:$D$112;"Округ";))=A4;$E$16:$E$112);$B$17:$B$136)) |
|
|
03.11.2023 22:54:59
Изменено: |
|||
|
03.11.2023 15:17:15
Ладно, сам переведу. =ЛЕВСИМВ(A1,ПОИСК(СЖПРОБЕЛЫ(ПРАВСИМВ(ПОДСТАВИТЬ(A1,",",ПОВТОР(" ",99)),99)),A1)-3)
Изменено: |
|||
|
02.11.2023 18:15:39
|
|||
|
29.10.2023 15:10:58
Вариант.
=SMALL(IF(T(OFFSET(INDIRECT("'"&TRANSPOSE($L$2:$L$4)&"'!B2:B17");ROW($2:$17)-2;))=B2;N(OFFSET(INDIRECT("'"&TRANSPOSE($L$2:$L$4)&"'!AG2:AG17");ROW($2:$17)-2;)));2) ну или так (можно пополнять список листов) =SMALL(IF(IFERROR(T(OFFSET(INDIRECT("'"&TRANSPOSE($L$2:$L$17)&"'!B2:B17");ROW($2:$17)-2;));"")=B2;IFERROR(N(OFFSET(INDIRECT("'"&TRANSPOSE($L$2:$L$17)&"'!AG2:AG17");ROW($2:$17)-2;)); ));2)
Изменено: |
|
|
20.10.2023 19:56:20
Tatar,
=SUM(N(INDIRECT("'"&TEXT(DAY(ROW(INDEX($D$1:$D$100000;$E$9):INDEX($D$1:$D$100000;$F$9)))*100+MONTH(ROW(INDEX($D$1:$D$100000;$E$9):INDEX($D$1:$D$100000;$F$9)))&YEAR(ROW(INDEX($D$1:$D$100000;$E$9):INDEX($D$1:$D$100000;$F$9)));"00\.00\.0000")&"'!"&ADDRESS(ROW(C3);COLUMN(C3);1;1)))) Ну и вводить надо тремя известными клавишами - CTRL+SHIFT+ENTER Прикрепил файл. |
|
|
18.10.2023 21:47:35
Tatar, В вашем первоначальном примере листам присвоены названия в виде дат, собственно, все формулы в этой теме от этого и отталкиваются. В последнем примере у листов разные названия и естественно, ни одна формула работать не будет.
В теории, можно, в отдельном столбце прописать названия листов (причем прописанные имена должны быть на 100% идентичны названиям листов) и использовать их в качестве критерия, но как это будет на практике не представляю. Возможно, точно не знаю, это легче сделать с помощью макроса. Выше Дмитрий предложил вариант и он вроде работает. (Приложил файл с его кодом).
Изменено: |
|
|
05.10.2023 19:12:48
Немного изменил формулу Максим В., чтобы работала с любой локалью (на всякий случай поясню - не надо будет мучаться со сменой алфавита ДД, JJ, DD и т.д.)
=SUM(N(INDIRECT("'"&TEXT(DAY(ROW(INDEX($A$1:$A$100000;$B$1):INDEX($A$1:$A$100000;$C$1)))*100+MONTH(ROW(INDEX($A$1:$A$100000;$B$1):INDEX($A$1:$A$100000;$C$1)))&YEAR(ROW(INDEX($A$1:$A$100000;$B$1):INDEX($A$1:$A$100000;$C$1)));"00\.00\.0000")&"'!"&ADDRESS(ROW(B3);COLUMN(B3);1;1)))) Ну и мой жирноватый немассивный вариант: =SUMPRODUCT(SUMIF(INDIRECT("'"&TEXT(DAY(ROW(INDEX($A$1:$A$100000;$B$1):INDEX($A$1:$A$100000;$C$1)))*100+MONTH(ROW(INDEX($A$1:$A$100000;$B$1):INDEX($A$1:$A$100000;$C$1)))&YEAR(ROW(INDEX($A$1:$A$100000;$B$1):INDEX($A$1:$A$100000;$C$1)));"00\.00\.0000")&"'!A2:A100");$A4;INDIRECT("'"&TEXT(DAY(ROW(INDEX($A$1:$A$100000;$B$1):INDEX($A$1:$A$100000;$C$1)))*100+MONTH(ROW(INDEX($A$1:$A$100000;$B$1):INDEX($A$1:$A$100000;$C$1)))&YEAR(ROW(INDEX($A$1:$A$100000;$B$1):INDEX($A$1:$A$100000;$C$1)));"00\.00\.0000")&"'!"&ADDRESS(2;COLUMN(B2);1;1))))
Изменено: |
|
|