Страницы: 1
RSS
Выпадающий список не работает после закрытия файла
 
Здравствуйте! Выпадающие списки не работают после закрытия файла
Приходится заново выполнять "проверку данных" на нужной ячейке с выпадающим списком. Причем проверка эта для галочки: просто нажимаешь ОК без внесения каких-либо исправлений - и выпадающий список снова работает!
Если же выпадающих списков в файле много, то каждый раз после открытия файла приходится выполнять эту однообразную операцию (на нескольких листах, например)
1. Как это можно ли это починить/исправить?
2. Если это не исправляется - можно ли автоматизировать проверку данных нескольких выпадающих списков, расположенных друг за другом в одной строке?

Приложил крошечный файл с примером на одном листе
Буду благодарен за любую информацию: что делать, что почитать....
Изменено: prohodanet - 06.11.2018 20:34:26
 
Логично. Файл закрыли - список не работает :)

Какой смысл в таких сложностях (динамический диапазон с двумя именами)? Почему не простая ссылка на диапазон?
 
Как по мне я бы удалял макросом пустоты коль они появляются в списках. И списки поместил бы в умную таблицу для удобства
 
prohodanet,  недавно быа тема с аналогичной проблемой, не помню как там лечилось. На самом деле странно, но лечится если даже просто вашу формулу сперва в имена, а потом уже в проверке данных использовать. Причины - не знаю. Что-то не нравится.
По вопросам из тем форума, личку не читаю.
 
Скорее всего проблема в том, что файл используется или открывается в Excel 2007 и ниже. Там недопустимо использовать ссылки на другие листы в УФ и вып.списках.

P.S. Файл не открывал.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
БМВ, благодарю за ответ: так действительно работает (подальше положишь - поближе возьмешь).
vikttur, формулу нашел на одном из форумов. До тех пор, пока я не изучил "умные таблицы", про которые сказал vlad000, формула кажется оптимальным решением. Может кто подсказать как правильно называются "умные таблицы", чтобы про них прочитать?
Дмитрий(The_Prist) Щербаков, Excel 2010
 
Цитата
prohodanet написал:
Может кто подсказать как правильно называются "умные таблицы", чтобы про них прочитать?
Также кличут "плоская" таблица и табличный режим данных. Это объект такой. Заодно советую и про диапазоны прочитать не повредит.  
 
В формулах списков не пересчитывается фрагмент СУММ(...), внутри которого использована формула массива, а в именах такое пересчитывается.
В формуле  списка 3 и 4 вместо СУММ используйте СУММПРОИЗВ,
пример для списка 3: =СМЕЩ(Ячейка1;;;СУММПРОИЗВ(--(Столбец1<>"")))
А лучше использовать СЧЁТЗ, например, для списка 4: =СМЕЩ(Ячейка;;;СЧЁТЗ(Столбец))
Изменено: ZVI - 09.11.2018 15:44:49
 
ZVI, Владимир, добрый день. это никак  не объясняет поведение именно после открытия. Ведь до этого, все работает и считает.
По вопросам из тем форума, личку не читаю.
 
Михаил, добрый день.
Вопрос-то был как починить. А попытка объяснения поведения (не причины) - это бонус :)
После открытия книги формула пересчитывается не как массивная, поэтому СУММ(--(Столбец1<>"") выдает значение 1 для первого элемента из массива, а не массив единичек/нулей.
Видно, что если удалить 1-й элемент из источника списка, то в списке вообще не будет элементов, то есть формула продолжает пересчитываться не как массивная.
При открытии диалога "Проверка данных" массивный пересчет не включится при выходе по "Отмена".
Но включится при нажатии OK, это видно по изменению выпадающего списка при изменении данных источника.
Только не спрашивайте почему так, так как это не ко мне вопрос.
Для меня это просто факт из жизни Excel, с которым можно не соглашаться, но считаться приходится
Изменено: ZVI - 09.11.2018 17:05:20
 
Инструмент  "Проверка данных - список"  имеет и другие нюансы, из которых видно, что он не развивался так активно, как сам Excel. Например, удобно было бы в качестве источника использовать столбец таблицы, которую справка называет просто таблицей: Вставка - Таблица, а с легкой руки Николая Павлова мы называем такую таблицу умной таблицей от smart-table, где smart имеет контекст "интеллектуальная", но т.к. это длинное слово, удобнее "умная" (аналогия: умный дом и проч.).
В качестве ссылки на столбец таблицы хотелось бы в формуле списка использовать структуированную ссылку, например: =Таблица1[Столбец1] , но так нельзя. Приходится создавать имя с такой формулой, а в формуле списка использовать созданное имя.
Изменено: ZVI - 09.11.2018 17:11:59
 
Цитата
ZVI написал:
Для меня это просто факт из жизни Excel, с которым можно не соглашаться, но считаться приходится
Мдааа . Сюрприз от разработчика. И правда замена на SUM на SUMPRODUCT решила проблему.
По вопросам из тем форума, личку не читаю.
 
Цитата
БМВ написал:
Сюрприз от разработчика
Здравствуйте, Владимир и Михаил! Спасибо за интереснейшее обсуждение (и автору темы за вопрос)! Насчет сюрприза не уверен, про наличие ограничений в формулах разного типа предупреждается здесь, правда, разобраться не просто :)  
Владимир
 
sokol92, ну если про Union, array constants … все понятно и сразу не работает, то формула массива работает до переоткрытия файла. И вот это как раз никак не озвучено ни по ссылке, ни, естественно при вводе, ведь нет признака что нам нужно именно работать с массивом.
По вопросам из тем форума, личку не читаю.
 
Я согласен про (явную?) неозвученность, тем более, что уже ранее сталкивался с этим эффектом (и при условном форматировании тоже). Признака "массива", похоже, нет и в структуре xml сохраненного файла.
Владимир
Страницы: 1
Наверх