Форум поддержки пользователей LibreOffice, Apache OpenOffice

Главная категория => Calc => Тема начата: Kirk163 от 21 апреля 2017, 10:10

Название: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: Kirk163 от 21 апреля 2017, 10:10
дано. выпадающий список с производителем, выпадающий список с моделями, выпадающий список с цветом. Как их связать, что бы при выборе из 1 выпадающего списка допустим "Лада" во втором выпадающем списке появились только модели лады, а втретьем цвета лады.Соответственно при выборе в 1 выпадающем списке "тойота" 2 и 3 выпадающие списки менялись на модели и цвета Тойоты. Подскажите пжл
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: rami от 21 апреля 2017, 10:36
Были похожие темы на форуме, например, Связные выпадающие списки (http://forumooo.ru/index.php/topic,5395.0.html) или Зависимые выпадающие списки (2 уровня, 1 критерий) (http://forumooo.ru/index.php/topic,5803.0.html) и другие. Пользуйтесь поиском по форуму.
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: economist от 21 апреля 2017, 14:46
Выпадающий контекстный список, в т.ч. трехуровневый (пример для Excel, но должен работать и в Calc)
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: lufthansa от 21 июня 2018, 16:35
Цитата: economist от 21 апреля 2017, 14:46
Выпадающий контекстный список, в т.ч. трехуровневый (пример для Excel, но должен работать и в Calc)

Для трехуровневого делаем горизонтальные справочники. Для каждой строки нужно назвать диапазон.
У меня таких строк 72! Можно ли автоматом прозвать строки по первой ячейке в строке?
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: economist от 21 июня 2018, 16:46
Да: Лист - Именованные диапазоны - Создать

Или макросом.
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: lufthansa от 25 июня 2018, 13:01

Цитата: economist от 21 июня 2018, 14:46Да: Лист - Именованные диапазоны - Создать

Так а как мне одновременно по первой ячейке назвать 72 строк без макроса?
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: JohnSUN от 25 июня 2018, 14:00
Честно говоря, вытянуть справочники по горизонтали - очень неудачная идея. Можешь книгу показать? Хотя бы образец данных (лень набирать тестовые строки для решения)
А пока будешь обдумывать, что именно показать в качестве образца - глянь здесь (http://forumooo.ru/index.php/topic,4807.msg29916.html#msg29916) и здесь (http://forumooo.ru/index.php/topic,5803.msg37023.html#msg37023)
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: lufthansa от 26 июня 2018, 10:29
Чтоб свой файл с данными не отправлять сделала от балды новый.
У меня Классификатор ТМЦ для разных групп может быть одинаковый, поэтому несколько таблиц справочников.

Никак не могла придумать как сделать третий уровень и потом просто через & сцепила первые два условия (гений, что поделать).

Но вот никак не могу сделать условное форматирование, такое как я видела в других темах.
Чтоб выделяло мне ячейки (все три В1, В2 и В3), когда первую группу тмц я меняю на другую, а остальные две ячейки (классификатор и ТМЦ) не очищаются(
не могу понять, что делаю не так...  ???
Выделяет только первую строку и все...
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: JohnSUN от 26 июня 2018, 12:01
Цитата: lufthansa от 26 июня 2018, 10:29
не могу понять, что делаю не так...  ???
Выделяет только первую строку и все...
Ну, здесь-то всё просто - формула, которая рассчитывает условие для формата, "привязана" к ячейке, которую собирается форматировать. И для первой строки считается без проблем. А вот для второй и третьей строки она слегка изменяется из-за относительных ссылок в формуле: было, например, ...$Лист1.B2=КлассификаторТМЦ..., а для ячейки во второй строке стало уже ...$Лист1.B3=КлассификаторТМЦ..., номер строки сполз вместе с форматируемой ячейкой. Так что во всей формуле просто поставь знаки долларов перед номерами строк и цветом зальются все три ошибочных ячейки - ...$Лист1.B$2=КлассификаторТМЦ...

А с остальным нужно будет немного подождать - нужно здесь немного текучку разгрести...
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: lufthansa от 26 июня 2018, 13:31
Цитата: JohnSUN от 26 июня 2018, 10:01не могу понять, что делаю не так...  Непонимающий
Выделяет только первую строку и все...
Ну, здесь-то всё просто

я кажется поняла, суммапроизв трех ячеек дает сбой, верно?
тогда я попробовала суммапроизв (группыТМЦ и Классификатор);суммапроизв( Классификатор и ТМЦ) - и тоже не работает.


Дополнено, просто не так назвала диапазон, потом все заработало. всё да не всё.
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: lufthansa от 26 июня 2018, 14:16
да, дело в суммпроизв.

НЕ(ИЛИ(B$1="";B$2="";B$3="";

СУММПРОИЗВ(ГруппыТМЦ=B$1;КлассификаторТМЦ=B$2);

СУММПРОИЗВ(КлассификаторТМЦ=B$2;ТМЦ=B$3);

СУММПРОИЗВ(ГруппыТМЦ=B$1;ТМЦ=B$3)

)
)

ну что не так опять?
форматирование делала только по столбцу В.

Если без третьего суммпроизв, то не корректно выделяет. Если одинаковый завод у булок и хлеба, то если поменять хлеб на булку в группе, то не закрашивает.

Не умею  объяснить(
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: JohnSUN от 26 июня 2018, 15:47
Не уверен, что полностью понимаю задачу, которой тебя нагрузили. Но, надеюсь, вот это поможет
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: JohnSUN от 26 июня 2018, 15:51
Цитата: lufthansa от 26 июня 2018, 13:31
я кажется поняла, суммапроизв трех ячеек дает сбой, верно?
Да не должна бы - и с гораздо большим количеством обычно справляется.... Может быть, стоит вместо НЕ(ИЛИ( какой-нибудь не очень сложный И( воткнуть?
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: lufthansa от 29 июня 2018, 11:38
Цитата: JohnSUN от 26 июня 2018, 13:51Может быть, стоит вместо НЕ(ИЛИ( какой-нибудь не очень сложный И( воткнуть?

Не знаю! Я в печали! Не понимаю почему формула работает для двух ячеек и не работает для трех.

Вот файл, в который вы вроде писали формулу для УФ.
Точно также я повторила в свой файл, но для трех ячеек.

И сегодня я столкнулась с тем, что не понимаю как работают эти формулы в УФ.

С предыдущих ответов файл "для форума" (по выпадающему списку у меня вопросов нет, я себе придумала как сделать для трех уровней) - созрел вопрос.
если я пишу для диапазона B1 формулу в УФ "ГруппыТМЦ=B1" и применяю стиль "гуд" -  это не работает и я совершенно тогда не понимаю как это работает.  >:( :-\ :'(

какая там вообще логика?

и хотелось бы без макросов. А то я их вставлю но понимать не буду что да где. Когда-то соберусь и буду разбираться..

Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: bigor от 29 июня 2018, 12:31
Посмотри что получилось. Правда почему-то в начале списка пустые строки остаются :(

ps переложил файл, в прошлом сломался список должностей
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: lufthansa от 29 июня 2018, 12:57
Цитата: Bigor от 29 июня 2018, 12:31
Посмотри что получилось. Правда почему-то в начале списка пустые строки остаются :(

ps переложил файл, в прошлом сломался список должностей

вот я добавила свой файл, в котором нужно сделать УФ. Это только пример и в красивый вид его не нужно приводить, помогите мне сделать условным форматированием, чтобы выделяло цветом ячейки если в выпадающем списке я выбираю несоответствующий критерий другим ячейкам (либо ГруппыТМЦ <> КлассификаторТМЦ&Товары, либо Классификатор <> ГруппыТМЦ&Товары, либо товары <> ГруппыТМЦ&КлассификаторТМЦ)


а в вашем файле вообще отсутствует условное форматирование...

Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: bigor от 29 июня 2018, 13:01
Цитата: lufthansa от 29 июня 2018, 10:57а в вашем файле вообще отсутствует условное форматирование...
Вообще-то это ваш файл :) я правда не понял как он относится к вопросу в посте с ним :) но сделал согласно условию написанному в файле
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: lufthansa от 29 июня 2018, 13:38
Цитата: Bigor от 29 июня 2018, 13:01
Цитата: lufthansa от 29 июня 2018, 10:57а в вашем файле вообще отсутствует условное форматирование...
Вообще-то это ваш файл :) я правда не понял как он относится к вопросу в посте с ним :) но сделал согласно условию написанному в файле


Этот файл как пример из другой старой темы. Мой файл называется "для форума". Ну не умею объяснять...

Так а что вы сделали, если там нет условного форматирования и должностей??)))
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: lufthansa от 29 июня 2018, 13:39
Цитата: lufthansa от 29 июня 2018, 11:38он относится к вопросу в посте с ним
из этого не моего файла я брала как пример формулы условного форматирования
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: bigor от 29 июня 2018, 14:54
Вот условное форматирование, посмотрите, кажется все так как вы хотите
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: lufthansa от 29 июня 2018, 15:43
Цитата: Bigor от 29 июня 2018, 14:54
Вот условное форматирование, посмотрите, кажется все так как вы хотите

дададада!!!! спасибо!!!!

Я уже столько вариантов перепробовала))
Хочу уточнить, я сделала не(и(суммпроизв;суммпроизв)), то есть без условия, что ячейка не должна быть пустой.
И выделяет точно также, как и с эти условием, верно?

Это у всех с таким форматированием файл начинает оооочень медленно откликаться на любое действие? Даже если диапазон маленький...
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: bigor от 29 июня 2018, 15:47
Цитата: lufthansa от 29 июня 2018, 13:43Хочу уточнить, я сделала не(и(суммпроизв;суммпроизв)), то есть без условия, что ячейка не должна быть пустой.
И выделяет точно также, как и с эти условием, верно?
да, условия  проверки на пустоту лишние, у вас были, я и оставил :)
у меня тоже тормозит
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: JohnSUN от 29 июня 2018, 15:52
Тормоза, скорее всего, связаны с очень большими диапазонами. Не нужно жадничать, 1048576 значений для каждого из именованных наборов данных это очень много.
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: lufthansa от 29 июня 2018, 15:54
Цитата: JohnSUN от 29 июня 2018, 15:52
Тормоза, скорее всего, связаны с очень большими диапазонами. Не нужно жадничать, 1048576 значений для каждого из именованных наборов данных это очень много.

я задала диапазон A1:P3 и тормозит

п.с. влияют на это и диапазоны для выпадающего списка?
попробую укоротить... некоторые реально такие большие не надо. Перестраховалась))
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: JohnSUN от 29 июня 2018, 16:18
Ну да. Вот, например, возьмём условие для третьей строки
=IF(B$1&B$2=ГруппыТМЦКлассификаторТМЦ;ТОВАРЫ;"")
ГруппыТМЦКлассификаторТМЦ описан как $Лист2.$F$2:$F$1048576
То есть Calc сцепляет значения первых двух ячеек и сравнивает их с миллионом значений, попутно отбирая значения для списка из миллиона соседних ячеек ТОВАРЫ.
Меняем 1048576 на 1024 в каждом из именованных диапазонов и тормоза резко уменьшаются
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: lufthansa от 29 июня 2018, 16:32
Цитата: JohnSUN от 29 июня 2018, 14:18тормоза резко уменьшаются

таки да!

диапазоны были как А:А, поставила цифры А2:А1000 и все слетело( ссыл стали.
потом заново прописывала для выпадающего списка ссылки...

но тормозить перестало!!!!)))
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: kompilainenn от 29 июня 2018, 19:01
Цитата: lufthansa от 29 июня 2018, 14:32диапазоны были как А:А
>_<
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: lufthansa от 4 июля 2018, 08:53
Цитата: kompilainenn от 29 июня 2018, 17:01>_<

большие или опять что-то не так?? :-(
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: JohnSUN от 4 июля 2018, 09:36
Да нет, всё нормально: просто запись A:A именно это и обозначает - длиннющий диапазон A1:A1048576, больше миллиона ячеек

Можешь чуть подробнее про вот этот эпизод рассказать?
Цитата: lufthansa от 29 июня 2018, 16:32
диапазоны были как А:А, поставила цифры А2:А1000 и все слетело( ссыл стали.
потом заново прописывала для выпадающего списка ссылки...
Как меняла? Я, например, нажал Ctrl+F3 (открыл список всех именованных диапазонов) и прошелся по всему списку прямо в этом окне (см. картинку). При этом ничего не слетело... И поскольку везде в выпадающих списках используются именно имена диапазонов, а не явные адреса ячеек, то всё заработало сразу же после закрытия этой формочки.
Хотя нет! Не всё... Кажется, в одном месте пришлось подменить имя - там у тебя в выпадающем списке использовалось ГруппыТМЦ, а в проверке было указано СписокГрупп (или наоборот, сейчас уже не вспомню). Сделал везде одно и то же имя

И ещё один вопрос: почему .xlsx? У босса стоит Эксель, а у всех остальных LibreOffice?
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: lufthansa от 6 июля 2018, 09:05
Про эпизод... Это наверно натупила, не помню, думаю слетало потому что доллар не проставляла... Просто цифру поставила после буквы и все. Поэтому, да?
Я тоже также меняла, в управлении.

Про разное имя.
Я специально сделала два диапазона: СписокГрупп и ГруппыТМЦ, потому что группытмц часто повторяются, когда группируют классификатор и сами товары.
В моем реальном файле 666 строк ГруппыТМЦ и всего 12 в СписокГрупп.
Знаю, что для первого выпадающего списка я могу залить чисто текст, но так как я хочу чтоб файлом пользовался начальник сам, то делаю так. Хотя конечно думаю, что корректировать все равно я буду.


Как бы да, не все еще перешли на Либре...  
Но в этом кальке столько нюансов. То же условное форматирование, пишу формулу, выбираю ячейку - весь текст стерся. И если несколько ячеек надо выбирать... Пишу руками, потом опять ссыл, опять заново. Я еще не очень подружилась с этим.
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: lufthansa от 6 июля 2018, 09:15
Вот, вчера все было. Сегодня открываю и уже стиль другой. Стоял Bad и выделяло все красным, а теперь вот этот вот...
И что с этим делать?
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: JohnSUN от 6 июля 2018, 09:30
Ну, тут уж ничего не поделаешь... пока не станешь сохранять в "родном" формате.
Calc, когда ему приказывают сохранить книгу в формате Экселя, тихо материться сквозь зубы и пытается преобразовать простые и понятные (ему) формулы-стили-диапазоны в глюкавую ахинею, которую поймут все эксели от 2007 до нынешнего... Для этого приходится отказываться от своих стилей и создавать экселеподобные, отказываться от своих встроенных функций и использовать хитрые конструкции а-ля Майкрософт, отказываться от своей адресации в диапазонах и подсовывать что-то понятное экселям...
Попробуй создать копию книги в формате .ODS, открой-закрой несколько раз, проверь - изменилось ли хоть что-нибудь?
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: lufthansa от 6 июля 2018, 13:42
Работаю теперь в одс.
Когда открыла форматирование из одной строки стало куча.
Переделала.
Вроде все было хорошо.

После каких-о действий их опять куча....


Может потому что было начиная со столбца С, а я перед С еще один вставила и он стал Д?  ??? :roll:
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: kompilainenn от 6 июля 2018, 13:45
Цитата: lufthansa от  6 июля 2018, 11:42После каких-о действий их опять куча....
после копирования условного форматирования ручками по листу. в 6.1 это исправили. Однако все равно диапазоны лучше менять в диалоге Условное форматирование для <ваш диапазон>
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: lufthansa от 6 июля 2018, 13:47
Цитата: kompilainenn от  6 июля 2018, 11:45по листу.

Ясно. Я сначала так и делала, потом решила по-другому, потому что опять съезжало...
Название: Re: Зависимость выпадающего списка от другого выпадающего списка
Отправлено: lufthansa от 6 июля 2018, 15:35
Я скоро с ума сойду.  >:(

Уже и пробовала ячейку выбрать, потом пробовала руками написать, с названием страницы и без. Достало уже!

Как лучше, сделать в одной ячейке и переносить копированием формата на остальные (в итоге так и сделала) или выделять весь диапазон и делать эту "проверку"?