То есть каждый расчет вернет "истину" или "ложь"? Прикольно! Никогда бы не догадался до такого решения.
2
2
08.07.2025 20:30:23
2
То есть каждый расчет вернет "истину" или "ложь"? Прикольно! Никогда бы не догадался до такого решения. 2 2 |
|
|
07.12.2024 10:58:12
При создании ссылки на книгу десктоп версии можно делать так берем ячейку (пусть А1) куда вставлять данные, идем в БД (откуда берем данные), там у нас динамический диапазон. В результате в настольной версии в А1 будет такая формула: =[БД.xlsx]Лист1!$A$1# и все будет обновляться. Но в он-лайн версии, чем я пользуюсь, так нельзя (через # делать)
Но у меня массив может меняться. Сейчас он =A1:A7, а завтра может быть =A1:A100 Вопрос, как в он-лайн версии, обращайся к БД можно сделать саморастягивающийся диапазон. Желательно, не используя смещ. Я читал, что она очень ресурсоемкая Вот бд: А вот сюда подтянуть: Если кто-то знает, пожалуйста, подскажите как это сделать
Изменено: |
|
|
11.11.2024 08:20:20
Добрый день! Пожалуйста, помогите формулой!
Лист Отмена свертывания содержит данные, которые нужно анализировать. Лист Качество расписания (учителя) столбцы C,D,E – то, где должен быть результат. В столбце С нужно посчитать сколько раз в день (столбец А) у учителя (столбец B) получается «окно». «Окно», это когда в расписании учителя не все уроки подряд идут. Например есть урок 1,2,4, но нет урока 3. Значит расписание в этот день содержит одно окно. В столбце D нужно посчитать сколько раз в день (столбец А) у учителя (столбец B) получается два окна подряд. Например, есть урок 1,2,5, но нет уроков 3 и 4 (подряд), значит, в расписании у учителя в этот день одно двойное окно. >2 окон подряд по той же логике. Если знаете как сделать формулой динамичечского массива, пожалуйста, подскажите. Есть решение обычной формулой, но динамической нет. |
|
|
15.10.2024 13:35:11
Собственно, вопрос в названии.
Есть лист Динамичский_входящий (входящие файлы, с которых нужно считать), есть лист Динамические, в столбце D хотелось бы увидеть этот самый счет. 2 (если связка "класс" и предмет" предмет повторяется. Обычными формулами посчитано на листе Обычный, но вот воспроизвести для массива не получается. Если кто-то знает как, пожалуйста, подскажите Разумеется, что я потом добавлю эту формулу, через гстолбик к массиву А2#. Это чтобы иметь ввиду, что на него бы лучше не ссылаться, если можно🙏🏻... |
|
|
09.10.2024 18:47:58
Я уже грешным делом думаю, что раз не получается так создать массив, то, может, разумным подходом было бы создать массив из плоской таблицы, указав день, номер урока для каждого из кабинетов и кабинет. Ну а дальше уже привычным и понятным способом определять свободен ли он. Хоть через впр, хоть через счетеслимн. Конечно, проблема только в том, что я пока не представляю как это сделать. Но, думаю, что принцип примерно такой же...
Upd но, похоже, это же будет не просто...я не нашёл волшебной функции, которая бы нужный массив сделала
Изменено: |
|
|
09.10.2024 17:31:50
По какой-то причине в файле из сообщения #1, #16, #14 - основной файл, не делит на столбцы, при этом, что интересно, на искусственном примере (сообщение #2) - работает.
Если честно, не понимаю от чего такая магия 🤷🏻 Размер массивов, может, играет роль. Но ведь одинаковый же... Частично понял в чем проблема. Даже если из рабочего варианта убрать один столбец из массива (с конца) допустим, что нет столько уроков в день, то тоже схлопывается массив с разделением кабинетов. Увы, вопрос открыт
Изменено: |
|
|
09.10.2024 17:13:42
Интересно, а мой ли
Изменено: |
|
|
08.10.2024 16:56:13
2IKor
Если очень просто, то если в массиве 0, то нужно вытащить кабинет из массива B#1 первого столбца и вписать вместо нуля. Разумеется, подход нужен максимально оптимальный (не затратный по вычислительным ресурсам) Попробую Ваш вариант, но можно ли его в массив засунуть? Все делаю массивами, иначе, суммировав все мои расчеты, будет очень медленно. 2Online Если очень подробно и с самого начала (все листы есть в моем первом файле). Они скрыты, чтобы не усложнять. 1. Берем список кабинетов лист Списки_ручной таблица Кабинеты. Я расположил их вертикально. 2. Берем список уроков, которые выбрал пользователь. Уроки берутся из листа Поиск столбца E (там тоже массив). Я расположил горизонтально 3. Делаем матрицу, определяя свободен ли кабинет. Логика такая, что если на листе Отмена свертывания расписания в столбце класс пусто, то кабинет свободен. Если же напротив кабинета написан класс, то кабинет занят. Проверку нужно делать на определенный день, на определенный номер урока + такую же проверку (не занят ли кабинет) делаю для доп таблицы БД_замен_фильтр (там есть дата). Для п.3 я использовался счетеслиМН. Если ничего не нашло (не посчитало, то 0, кабинет свободен. Если >0 (или в одной таблице что-то или в другой, то занят) Потом мне нужно получить списки этих свободных кабинетов. Вроде, я это настроил со столбца R2 и дальше) На картинке я отметил схематично стрелочками, где видно, что если в массиве 0, то берем каб из 1 столбца
Изменено: |
|
|
08.10.2024 16:20:49
В он-лайн можно. Да, 365
Логика такая: (беру первый файл т.к. основной рабочий он) Если в массиве B1# есть 0, то вписать туда номер кабинета из таблицы Кабинеты[Полный список кабинетов] они же из массива B1# столбец 1 Вся логика строка 1 = № уроков на выбранный день столбец 1 = все кабинеты СчетЕслиМн считает, что если кабинет занят, то ставит 1, иначе 0 Дальнейшая логика такая, что на месте 0 будут кабинеты (они свободные, значит) и я дальше буду их в выпадающем списке использоваться, но это уже оффтоп начался)) Спасибо, что хотя бы смотрите 🙏🏻
Изменено: |
|
|
08.10.2024 09:43:26
Добрый день!
Не понимаю почему не получается подставить кабинеты из 1 столбца массива B1, если значение внутри таблицы равно 0 (кабинет не занят). В первой строке номера уроков меняются, также и их кол-во, в столбце B уникальный список кабинетов. Я почти уверен, что проблема в том, что размер массивов разный. Вроде, формула простая, а вот не работает. Понимаю, что нужно сделать примерно так: MAP(мой массив;lambda(ar;если ar=0; вытащи кабинет из 1 столбца массива;ar). Формула выдает ошибку. Массив, где нужно произвести вычисления в B1. ИЛИ так же вытащить эти кабинеты в таблицу R2:AE2. В результате нужно, если 0, то кабинет
Изменено: |
|
|
04.10.2024 08:49:46
Добрый день!
У меня на листе Расчет_поиска_кабинетов в B1 есть массив, в котором есть формула счетеслимн. Логика такая: СЧЁТЕСЛИМН( ВЗЯТЬ('Отмена свертывания расписания'!A2#;;1);Кабинеты[Полный список кабинетов]; - соответствующий кабинет ВЗЯТЬ(ВЗЯТЬ('Отмена свертывания расписания'!A2#;;2);;-1);ВыбранДень; - на выбранный день ВЗЯТЬ(ВЗЯТЬ('Отмена свертывания расписания'!A2#;;3);;-1);ТРАНСП(ВЫБОРСТОЛБЦ(Поиск!C7#;3)); - на выбранный урок ВЗЯТЬ(ВЗЯТЬ('Отмена свертывания расписания'!A2#;;4);;-1);"" - если пусто в столбце класс Соответственно если получаю 1 - кабинет свободен, а если 0, то занят. Экспериментировал. Каждый элемент по отдельности от считает правильно. Но вот все вместе нет. Я даже не пойму что он выводит в результате (почему именно такие цифры в итоге?). В итоге я хочу рассчитать - является ли кабинет свободным на выбранный день на выбранный номер урока. Кабинет свободен, если в столбце класс - пусто На листе Расчет_поиска_кабинетов В массиве Столбец B - кабинеты Строка1 (начиная с С - целевые номера урока (меняются) На листе Поиск B2 - день (и от этого поменяются номера уроков) G2 - Выбрать другой кабинет (и от этого поменяются номера уроков). Я понимаю, что можно использовать еще просмотрХ, но ведь счетеслимн быстрее. Я же прав?)
Изменено: |
|
|
03.10.2024 13:37:40
Добрый день!
Предположим, у меня один массив А2:А98, другой B2:I98, а еще один горизонтальный B1:I1. Понятно, что они не собираются т.к. у горизонтального размер иной. Существует ли какая-то хитрость, чтобы из собрать? Я думаю, но не знаю можно ли так делать, добавить в горизонтальный первое "пустое" значение. Суть в то, что хотелось бы, чтобы массив B1:I1 стал A1:I11 (и первое значение была пустая ячейка. Ну, или иным способом собрать эти три массива |
|
|
30.09.2024 12:37:46
На листе поиск есть формула в ячейке F15#. Суть ее - просматривать название предмета по таблице, и, если такое есть, возвращать нужное. Скажите, а есть ли способ формулу, которая у меня находится в F15 сразу применить на массив А7 столбец F? То есть без доп столбца этого обойтись хотелось бы, если можно.
|
|
|