дано. выпадающий список с производителем, выпадающий список с моделями, выпадающий список с цветом. Как их связать, что бы при выборе из 1 выпадающего списка допустим "Лада" во втором выпадающем списке появились только модели лады, а втретьем цвета лады.Соответственно при выборе в 1 выпадающем списке "тойота" 2 и 3 выпадающие списки менялись на модели и цвета Тойоты. Подскажите пжл
Были похожие темы на форуме, например, Связные выпадающие списки (http://forumooo.ru/index.php/topic,5395.0.html) или Зависимые выпадающие списки (2 уровня, 1 критерий) (http://forumooo.ru/index.php/topic,5803.0.html) и другие. Пользуйтесь поиском по форуму.
Выпадающий контекстный список, в т.ч. трехуровневый (пример для Excel, но должен работать и в Calc)
Цитата: economist от 21 апреля 2017, 14:46
Выпадающий контекстный список, в т.ч. трехуровневый (пример для Excel, но должен работать и в Calc)
Для трехуровневого делаем горизонтальные справочники. Для каждой строки нужно назвать диапазон.
У меня таких строк 72! Можно ли автоматом прозвать строки по первой ячейке в строке?
Да: Лист - Именованные диапазоны - Создать
Или макросом.
Цитата: economist от 21 июня 2018, 14:46Да: Лист - Именованные диапазоны - Создать
Так а как мне одновременно по первой ячейке назвать 72 строк без макроса?
Честно говоря, вытянуть справочники по горизонтали - очень неудачная идея. Можешь книгу показать? Хотя бы образец данных (лень набирать тестовые строки для решения)
А пока будешь обдумывать, что именно показать в качестве образца - глянь здесь (http://forumooo.ru/index.php/topic,4807.msg29916.html#msg29916) и здесь (http://forumooo.ru/index.php/topic,5803.msg37023.html#msg37023)
Чтоб свой файл с данными не отправлять сделала от балды новый.
У меня Классификатор ТМЦ для разных групп может быть одинаковый, поэтому несколько таблиц справочников.
Никак не могла придумать как сделать третий уровень и потом просто через & сцепила первые два условия (гений, что поделать).
Но вот никак не могу сделать условное форматирование, такое как я видела в других темах.
Чтоб выделяло мне ячейки (все три В1, В2 и В3), когда первую группу тмц я меняю на другую, а остальные две ячейки (классификатор и ТМЦ) не очищаются(
не могу понять, что делаю не так... ???
Выделяет только первую строку и все...
Цитата: lufthansa от 26 июня 2018, 10:29
не могу понять, что делаю не так... ???
Выделяет только первую строку и все...
Ну, здесь-то всё просто - формула, которая рассчитывает условие для формата, "привязана" к ячейке, которую собирается форматировать. И для первой строки считается без проблем. А вот для второй и третьей строки она слегка изменяется из-за относительных ссылок в формуле: было, например,
...$Лист1.B2=КлассификаторТМЦ..., а для ячейки во второй строке стало уже
...$Лист1.B3=КлассификаторТМЦ..., номер строки сполз вместе с форматируемой ячейкой. Так что во всей формуле просто поставь знаки долларов перед номерами строк и цветом зальются все три ошибочных ячейки -
...$Лист1.B$2=КлассификаторТМЦ...А с остальным нужно будет немного подождать - нужно здесь немного текучку разгрести...
Цитата: JohnSUN от 26 июня 2018, 10:01не могу понять, что делаю не так... Непонимающий
Выделяет только первую строку и все...
Ну, здесь-то всё просто
я кажется поняла, суммапроизв трех ячеек дает сбой, верно?
тогда я попробовала суммапроизв (группыТМЦ и Классификатор);суммапроизв( Классификатор и ТМЦ) - и тоже не работает.
Дополнено, просто не так назвала диапазон, потом все заработало. всё да не всё.
да, дело в суммпроизв.
НЕ(ИЛИ(B$1="";B$2="";B$3="";
СУММПРОИЗВ(ГруппыТМЦ=B$1;КлассификаторТМЦ=B$2);
СУММПРОИЗВ(КлассификаторТМЦ=B$2;ТМЦ=B$3);
СУММПРОИЗВ(ГруппыТМЦ=B$1;ТМЦ=B$3)
)
)
ну что не так опять?
форматирование делала только по столбцу В.
Если без третьего суммпроизв, то не корректно выделяет. Если одинаковый завод у булок и хлеба, то если поменять хлеб на булку в группе, то не закрашивает.
Не умею объяснить(
Не уверен, что полностью понимаю задачу, которой тебя нагрузили. Но, надеюсь, вот это поможет
Цитата: lufthansa от 26 июня 2018, 13:31
я кажется поняла, суммапроизв трех ячеек дает сбой, верно?
Да не должна бы - и с гораздо большим количеством обычно справляется.... Может быть, стоит вместо
НЕ(ИЛИ( какой-нибудь не очень сложный
И( воткнуть?
Цитата: JohnSUN от 26 июня 2018, 13:51Может быть, стоит вместо НЕ(ИЛИ( какой-нибудь не очень сложный И( воткнуть?
Не знаю! Я в печали! Не понимаю почему формула работает для двух ячеек и не работает для трех.
Вот файл, в который вы вроде писали формулу для УФ.
Точно также я повторила в свой файл, но для трех ячеек.
И сегодня я столкнулась с тем, что не понимаю как работают эти формулы в УФ.
С предыдущих ответов файл "для форума" (по выпадающему списку у меня вопросов нет, я себе придумала как сделать для трех уровней) - созрел вопрос.
если я пишу для диапазона B1 формулу в УФ "ГруппыТМЦ=B1" и применяю стиль "гуд" - это не работает и я совершенно тогда не понимаю как это работает. >:( :-\ :'(
какая там вообще логика?
и хотелось бы без макросов. А то я их вставлю но понимать не буду что да где. Когда-то соберусь и буду разбираться..
Посмотри что получилось. Правда почему-то в начале списка пустые строки остаются :(
ps переложил файл, в прошлом сломался список должностей
Цитата: Bigor от 29 июня 2018, 12:31
Посмотри что получилось. Правда почему-то в начале списка пустые строки остаются :(
ps переложил файл, в прошлом сломался список должностей
вот я добавила свой файл, в котором нужно сделать УФ. Это только пример и в красивый вид его не нужно приводить, помогите мне сделать условным форматированием, чтобы выделяло цветом ячейки если в выпадающем списке я выбираю несоответствующий критерий другим ячейкам (либо ГруппыТМЦ <> КлассификаторТМЦ&Товары, либо Классификатор <> ГруппыТМЦ&Товары, либо товары <> ГруппыТМЦ&КлассификаторТМЦ)
а в вашем файле вообще отсутствует условное форматирование...
Цитата: lufthansa от 29 июня 2018, 10:57а в вашем файле вообще отсутствует условное форматирование...
Вообще-то это ваш файл :) я правда не понял как он относится к вопросу в посте с ним :) но сделал согласно условию написанному в файле
Цитата: Bigor от 29 июня 2018, 13:01
Цитата: lufthansa от 29 июня 2018, 10:57а в вашем файле вообще отсутствует условное форматирование...
Вообще-то это ваш файл :) я правда не понял как он относится к вопросу в посте с ним :) но сделал согласно условию написанному в файле
Этот файл как пример из другой старой темы. Мой файл называется "для форума". Ну не умею объяснять...
Так а что вы сделали, если там нет условного форматирования и должностей??)))
Цитата: lufthansa от 29 июня 2018, 11:38он относится к вопросу в посте с ним
из этого не моего файла я брала как пример формулы условного форматирования
Вот условное форматирование, посмотрите, кажется все так как вы хотите
Цитата: Bigor от 29 июня 2018, 14:54
Вот условное форматирование, посмотрите, кажется все так как вы хотите
дададада!!!! спасибо!!!!
Я уже столько вариантов перепробовала))
Хочу уточнить, я сделала не(и(суммпроизв;суммпроизв)), то есть без условия, что ячейка не должна быть пустой.
И выделяет точно также, как и с эти условием, верно?
Это у всех с таким форматированием файл начинает оооочень медленно откликаться на любое действие? Даже если диапазон маленький...
Цитата: lufthansa от 29 июня 2018, 13:43Хочу уточнить, я сделала не(и(суммпроизв;суммпроизв)), то есть без условия, что ячейка не должна быть пустой.
И выделяет точно также, как и с эти условием, верно?
да, условия проверки на пустоту лишние, у вас были, я и оставил :)
у меня тоже тормозит
Тормоза, скорее всего, связаны с очень большими диапазонами. Не нужно жадничать, 1048576 значений для каждого из именованных наборов данных это очень много.
Цитата: JohnSUN от 29 июня 2018, 15:52
Тормоза, скорее всего, связаны с очень большими диапазонами. Не нужно жадничать, 1048576 значений для каждого из именованных наборов данных это очень много.
я задала диапазон A1:P3 и тормозит
п.с. влияют на это и диапазоны для выпадающего списка?
попробую укоротить... некоторые реально такие большие не надо. Перестраховалась))
Ну да. Вот, например, возьмём условие для третьей строки
=IF(B$1&B$2=ГруппыТМЦКлассификаторТМЦ;ТОВАРЫ;"")
ГруппыТМЦКлассификаторТМЦ описан как $Лист2.$F$2:$F$1048576
То есть Calc сцепляет значения первых двух ячеек и сравнивает их с миллионом значений, попутно отбирая значения для списка из миллиона соседних ячеек ТОВАРЫ.
Меняем 1048576 на 1024 в каждом из именованных диапазонов и тормоза резко уменьшаются
Цитата: JohnSUN от 29 июня 2018, 14:18тормоза резко уменьшаются
таки да!
диапазоны были как А:А, поставила цифры А2:А1000 и все слетело( ссыл стали.
потом заново прописывала для выпадающего списка ссылки...
но тормозить перестало!!!!)))
Да нет, всё нормально: просто запись A:A именно это и обозначает - длиннющий диапазон A1:A1048576, больше миллиона ячеек
Можешь чуть подробнее про вот этот эпизод рассказать?
Цитата: lufthansa от 29 июня 2018, 16:32
диапазоны были как А:А, поставила цифры А2:А1000 и все слетело( ссыл стали.
потом заново прописывала для выпадающего списка ссылки...
Как меняла? Я, например, нажал Ctrl+F3 (открыл список всех именованных диапазонов) и прошелся по всему списку прямо в этом окне (см. картинку). При этом ничего не слетело... И поскольку везде в выпадающих списках используются именно имена диапазонов, а не явные адреса ячеек, то всё заработало сразу же после закрытия этой формочки.
Хотя нет! Не всё... Кажется, в одном месте пришлось подменить имя - там у тебя в выпадающем списке использовалось ГруппыТМЦ, а в проверке было указано СписокГрупп (или наоборот, сейчас уже не вспомню). Сделал везде одно и то же имя
И ещё один вопрос: почему .xlsx? У босса стоит Эксель, а у всех остальных LibreOffice?
Про эпизод... Это наверно натупила, не помню, думаю слетало потому что доллар не проставляла... Просто цифру поставила после буквы и все. Поэтому, да?
Я тоже также меняла, в управлении.
Про разное имя.
Я специально сделала два диапазона: СписокГрупп и ГруппыТМЦ, потому что группытмц часто повторяются, когда группируют классификатор и сами товары.
В моем реальном файле 666 строк ГруппыТМЦ и всего 12 в СписокГрупп.
Знаю, что для первого выпадающего списка я могу залить чисто текст, но так как я хочу чтоб файлом пользовался начальник сам, то делаю так. Хотя конечно думаю, что корректировать все равно я буду.
Как бы да, не все еще перешли на Либре...
Но в этом кальке столько нюансов. То же условное форматирование, пишу формулу, выбираю ячейку - весь текст стерся. И если несколько ячеек надо выбирать... Пишу руками, потом опять ссыл, опять заново. Я еще не очень подружилась с этим.
Вот, вчера все было. Сегодня открываю и уже стиль другой. Стоял Bad и выделяло все красным, а теперь вот этот вот...
И что с этим делать?
Ну, тут уж ничего не поделаешь... пока не станешь сохранять в "родном" формате.
Calc, когда ему приказывают сохранить книгу в формате Экселя, тихо материться сквозь зубы и пытается преобразовать простые и понятные (ему) формулы-стили-диапазоны в глюкавую ахинею, которую поймут все эксели от 2007 до нынешнего... Для этого приходится отказываться от своих стилей и создавать экселеподобные, отказываться от своих встроенных функций и использовать хитрые конструкции а-ля Майкрософт, отказываться от своей адресации в диапазонах и подсовывать что-то понятное экселям...
Попробуй создать копию книги в формате .ODS, открой-закрой несколько раз, проверь - изменилось ли хоть что-нибудь?
Работаю теперь в одс.
Когда открыла форматирование из одной строки стало куча.
Переделала.
Вроде все было хорошо.
После каких-о действий их опять куча....
Может потому что было начиная со столбца С, а я перед С еще один вставила и он стал Д? ??? :roll:
Цитата: lufthansa от 6 июля 2018, 11:42После каких-о действий их опять куча....
после копирования условного форматирования ручками по листу. в 6.1 это исправили. Однако все равно диапазоны лучше менять в диалоге Условное форматирование для <ваш диапазон>
Цитата: kompilainenn от 6 июля 2018, 11:45по листу.
Ясно. Я сначала так и делала, потом решила по-другому, потому что опять съезжало...
Я скоро с ума сойду. >:(
Уже и пробовала ячейку выбрать, потом пробовала руками написать, с названием страницы и без. Достало уже!
Как лучше, сделать в одной ячейке и переносить копированием формата на остальные (в итоге так и сделала) или выделять весь диапазон и делать эту "проверку"?