Excel для условий проверка данных нельзя использовать ссылки на другие листы
Здравствуте, помогите, пожалуйста, решить несколько вопросов. (файл excel прилагается)
1. Афтоматическое заполнение актуального баланса в зависимости от расходов (2 вопроса)
2. Создание выплывающих (всплывающих) списков
Все вопросы подробно описаны в самомо файле и выделены Красным жирным шрифтом.
Заранее спасибо за помощь. Без вас никак не могу решить эти вопросы. Полазил по форумам и сам поэксперементировал, но ничего не получилось.
Здравствуте, помогите, пожалуйста, решить несколько вопросов. (файл excel прилагается)
1. Афтоматическое заполнение актуального баланса в зависимости от расходов (2 вопроса)
2. Создание выплывающих (всплывающих) списков
Все вопросы подробно описаны в самомо файле и выделены Красным жирным шрифтом.
Заранее спасибо за помощь. Без вас никак не могу решить эти вопросы. Полазил по форумам и сам поэксперементировал, но ничего не получилось. Icefenix
Здесь должно быть 10 000,00 - 3 908,20 = 6 091,80 и так далее
Здесь должно быть уже 9581-408 = 9173
Здесь должно быть уже 9930-349 = 9581
Не понял почему
Здесь должно быть 10 000,00 - 3 908,20 = 6 091,80 и так далее
Здесь должно быть уже 9581-408 = 9173
Здесь должно быть уже 9930-349 = 9581
Не понял почему
Здесь должно быть 10 000,00 - 3 908,20 = 6 091,80 и так далее
Здесь должно быть уже 9581-408 = 9173
Здесь должно быть уже 9930-349 = 9581
Не понял почему
В файле полный бардак! Не понял почему вы таблицу снизу вверх заполняете.
Исправил файл, думаю что Вам нужно что-то подобное!
В файле полный бардак! Не понял почему вы таблицу снизу вверх заполняете.
Исправил файл, думаю что Вам нужно что-то подобное! Jhonson
"Ничто не приносит людям столько неприятностей, как разум."
Jhonson, я начал заполнять снизу вверх, так как мне показалось, что так будет удобнее для формул (так как они все ищут сверху вниз). Если я не прав, мне не сложно вести и сверху вниз. Главное реализовать то, что хочется
Serge_007, спасибо за помощь со списками
UPD. Jhonson, посмотрел файл, как все просто (кроме списков). Спасибо!
Jhonson, я начал заполнять снизу вверх, так как мне показалось, что так будет удобнее для формул (так как они все ищут сверху вниз). Если я не прав, мне не сложно вести и сверху вниз. Главное реализовать то, что хочется
Serge_007, спасибо за помощь со списками
UPD. Jhonson, посмотрел файл, как все просто (кроме списков). Спасибо! Icefenix
Serge_007, спасибо за помощь со списками
UPD. Jhonson, посмотрел файл, как все просто (кроме списков). Спасибо! Автор - Icefenix
Дата добавления - 02.04.2012 в 14:43
Jhonson, в вашем файле категории выбираюбтся в зависимости от того какой выбран счет (ежедневные, копилка, одежда).
А можете помочь сделать так, чтобы категории не зависели от счета, но зависели от того, что было совершено - приход или расход. Например, если мы вписали число в столбец с приходом денег, то доступный одни категории (зарплата, подарки, биржа и так далее), а если вписали число в столбец с расходом денег, то доступны другие категории (квартира, еда, связь и так далее)?
Спасибо.
Jhonson, в вашем файле категории выбираюбтся в зависимости от того какой выбран счет (ежедневные, копилка, одежда).
А можете помочь сделать так, чтобы категории не зависели от счета, но зависели от того, что было совершено - приход или расход. Например, если мы вписали число в столбец с приходом денег, то доступный одни категории (зарплата, подарки, биржа и так далее), а если вписали число в столбец с расходом денег, то доступны другие категории (квартира, еда, связь и так далее)?
Спасибо. Icefenix
При заполнении ячеек данными, часто необходимо ограничить возможность ввода определенным списком значений. Например, имеется ячейка, куда пользователь должен внести название департамента, указав где он работает. Логично, предварительно создать список департаментов организации и позволить пользователю лишь выбирать значения из этого списка. Этот подход поможет ускорить процесс ввода и уменьшить количество опечаток.
Выпадающий список можно создать с помощью Проверки данных
В этой статье создадим Выпадающий список с помощью Проверки данных ( Данные/ Работа с данными/ Проверка данных ) с типом данных Список .
Выпадающий список можно сформировать по разному.
А. Простейший выпадающий список - ввод элементов списка непосредственно в поле Источник
Самым простым способом создания Выпадающего списка является ввод элементов списка непосредственно в поле Источник инструмента Проверка данных .
Предположим, в ячейке B 1 необходимо создать выпадающий список для ввода единиц измерений. Выделим ячейку B 1 и вызовем Проверку данных.
Если в поле Источник указать через точку с запятой единицы измерения шт;кг;кв.м;куб.м , то выбор будет ограничен этими четырьмя значениями.
Теперь смотрим, что получилось. Выделим ячейку B 1 . При выделении ячейки справа от ячейки появляется квадратная кнопка со стрелкой для выбора элементов из выпадающего списка .
Недостатки этого подхода: элементы списка легко потерять (например, удалив строку или столбец, содержащие ячейку B 1 ); не удобно вводить большое количество элементов. Подход годится для маленьких (3-5 значений) неизменных списков. Преимущество : быстрота создания списка.
Б. Ввод элементов списка в диапазон (на том же листе, что и выпадающий список)
Элементы для выпадающего списка можно разместить в диапазоне на листе EXCEL, а затем в поле Источник инструмента Проверки данных указать ссылку на этот диапазон.
Предположим, что элементы списка шт;кг;кв.м;куб.м введены в ячейки диапазона A 1: A 4 , тогда поле Источник будет содержать =лист1!$A$1:$A$4
Преимущество : наглядность перечня элементов и простота его модификации. Подход годится для редко изменяющихся списков. Недостатки : если добавляются новые элементы, то приходится вручную изменять ссылку на диапазон. Правда, в качестве источника можно определить сразу более широкий диапазон, например, A 1: A 100 . Но, тогда выпадающий список может содержать пустые строки (если, например, часть элементов была удалена или список только что был создан). Чтобы пустые строки исчезли необходимо сохранить файл.
Второй недостаток: диапазон источника должен располагаться на том же листе, что и выпадающий список , т.к. для правил Проверки данных нельзя использовать ссылки на другие листы или книги (это справедливо для EXCEL 2007 и более ранних).
Избавимся сначала от второго недостатка – разместим перечень элементов выпадающего списка на другом листе.
B. Ввод элементов списка в диапазон (на любом листе)
В правилах Проверки данных (также как и Условного форматирования ) нельзя впрямую указать ссылку на диапазоны другого листа (см. Файл примера ):
Пусть ячейки, которые должны содержать Выпадающий список , размещены на листе Пример,
а диапазон с перечнем элементов разместим на другом листе (на листе Список в файле примера ).
Для создания выпадающего списка, элементы которого расположены на другом листе, можно использовать два подхода. Один основан на использовании Именованного диапазона , другой – функции ДВССЫЛ() .
Используем именованный диапазон Создадим Именованный диапазон Список_элементов, содержащий перечень элементов выпадающего списка (ячейки A 1: A 4 на листе Список ) . Для этого:
- выделяем А1:А4 ,
- нажимаем Формулы/ Определенные имена/ Присвоить имя
- в поле Имя вводим Список_элементов , в поле Область выбираем Книга ;
Теперь на листе Пример , выделим диапазон ячеек, которые будут содержать Выпадающий список .
- вызываем Проверку данных ;
- в поле Источник вводим ссылку на созданное имя: =Список_элементов .
Примечание Если предполагается, что перечень элементов будет дополняться, то можно сразу выделить диапазон большего размера, например, А1:А10 . Однако, в этом случае Выпадающий список может содержать пустые строки.
Избавиться от пустых строк и учесть новые элементы перечня позволяет Динамический диапазон . Для этого при создании Имени Список_элементов в поле Диапазон необходимо записать формулу = СМЕЩ(Список!$A$1;;;СЧЁТЗ(Список!$A:$A))
Использование функции СЧЁТЗ() предполагает, что заполнение диапазона ячеек ( A:A ), который содержит элементы, ведется без пропусков строк (см. файл примера , лист Динамический диапазон ).
Используем функцию ДВССЫЛ()
Альтернативным способом ссылки на перечень элементов, расположенных на другом листе, является использование функции ДВССЫЛ() . На листе Пример , выделяем диапазон ячеек, которые будут содержать выпадающий список, вызываем Проверку данных , в Источнике указываем =ДВССЫЛ("список!A1:A4") .
Недостаток : при переименовании листа – формула перестает работать. Как это можно частично обойти см. в статье Определяем имя листа .
Ввод элементов списка в диапазон ячеек, находящегося в другой книге
Если необходимо перенести диапазон с элементами выпадающего списка в другую книгу (например, в книгу Источник. xlsx ), то нужно сделать следующее:
- в книге Источник.xlsx создайте необходимый перечень элементов;
- в книге Источник.xlsx диапазону ячеек содержащему перечень элементов присвойте Имя , например СписокВнеш;
- откройте книгу, в которой предполагается разместить ячейки с выпадающим списком;
- выделите нужный диапазон ячеек, вызовите инструмент Проверка данных, в поле Источник укажите = ДВССЫЛ("[Источник.xlsx]лист1!СписокВнеш") ;
При работе с перечнем элементов, расположенным в другой книге, файл Источник . xlsx должен быть открыт и находиться в той же папке, иначе необходимо указывать полный путь к файлу. Вообще ссылок на другие листы лучше избегать или использовать Личную книгу макросов Personal.xlsx или Надстройки .
Если нет желания присваивать имя диапазону в файле Источник.xlsx , то формулу нужно изменить на = ДВССЫЛ("[Источник.xlsx]лист1!$A$1:$A$4")
СОВЕТ: Если на листе много ячеек с правилами Проверки данных , то можно использовать инструмент Выделение группы ячеек ( Главная/ Найти и выделить/ Выделение группы ячеек ). Опция Проверка данных этого инструмента позволяет выделить ячейки, для которых проводится проверка допустимости данных (заданная с помощью команды Данные/ Работа с данными/ Проверка данных ). При выборе переключателя Всех будут выделены все такие ячейки. При выборе опции Этих же выделяются только те ячейки, для которых установлены те же правила проверки данных, что и для активной ячейки.
Примечание : Если выпадающий список содержит более 25-30 значений, то работать с ним становится неудобно. Выпадающий список одновременно отображает только 8 элементов, а чтобы увидеть остальные, нужно пользоваться полосой прокрутки, что не всегда удобно.
В EXCEL не предусмотрена регулировка размера шрифта Выпадающего списка . При большом количестве элементов имеет смысл сортировать список элементов и использовать дополнительную классификацию элементов (т.е. один выпадающий список разбить на 2 и более).
Например, чтобы эффективно работать со списком сотрудников насчитывающем более 300 сотрудников, то его следует сначала отсортировать в алфавитном порядке. Затем создать выпадающий список , содержащий буквы алфавита. Второй выпадающий список должен содержать только те фамилии, которые начинаются с буквы, выбранной первым списком. Для решения такой задачи может быть использована структура Связанный список или Вложенный связанный список .
Вам может быть легко вставить раскрывающийся список на лист, но пробовали ли вы когда-нибудь вставить эту проверку данных на несколько листов одновременно? В этой статье я расскажу о том, как быстро и легко применить одну проверку данных к нескольким рабочим листам.
Применяйте проверку данных к нескольким листам одновременно
Фактически, вы можете создать один раскрывающийся список, а затем скопировать и вставить его на несколько листов по своему усмотрению. Пожалуйста, сделайте следующее, шаг за шагом:
1. Определите имя диапазона для вашего списка данных, который будет создан в раскрывающемся списке, выберите список данных и введите имя диапазона в Имя Box, а затем нажмите Enter ключ, см. снимок экрана:
2. Затем щелкните ячейку или диапазон, в который вы хотите вставить раскрывающийся список, и щелкните Данные > проверка достоверности данных > проверка достоверности данных, см. снимок экрана:
3. В проверка достоверности данных диалоговое окно под Настройки , выберите Список из Разрешить раскрывающийся список, а затем введите эту формулу: = Список имен (Список имен это имя диапазона, которое вы создали на шаге 1) в Источник текстовое поле, см. снимок экрана:
4, Затем нажмите OK, раскрывающийся список был успешно вставлен в активный лист, затем скопируйте ячейку раскрывающегося списка и удерживайте Ctrl нажмите клавишу, чтобы выбрать вкладки рабочего листа, и щелкните ячейку или диапазон, в который вы хотите вставить раскрывающийся список, затем щелкните правой кнопкой мыши выберите Специальная вставка > Специальная вставка из контекстного меню см. снимок экрана:
5. В выскочившем Специальная вставка диалоговое окно, выберите Проверка под макаронные изделия раздел, см. снимок экрана:
6, Затем нажмите OK , раскрывающийся список был вставлен сразу в выбранные листы, см. снимок экрана:
Как создать внешнюю проверку данных на другом листе или в книге?
Как правило, мы используем проверку данных, чтобы ограничить пользователей вводить нужные нам значения, но пытались ли вы когда-нибудь создать проверку внешних данных на другом листе или в книге, что означает, что исходные данные и проверка данных не находятся на одном листе или даже тетрадь такая же? В этой статье я расскажу о методе решения этой проблемы в Excel.
Fill Worksheets References
Создать проверку внешних данных на другом листе
Возьмем, к примеру, создание раскрывающегося списка. Я создам источник на одном листе, а затем использую «Имя диапазона», чтобы создать раскрывающийся список на другом листе на основе источника значения.
1. Создайте исходное значение раскрывающегося списка на листе по своему усмотрению. Смотрите скриншот:
2. Выберите эти исходные значения и перейдите к Имя Box чтобы определить имя диапазона для ячеек, здесь я ввожу Страна в Имя Box, а затем нажмите Enter ключ, чтобы закончить наименование. Смотрите скриншот:
3. Перейдите к листу, на котором вы хотите создать этот внешний раскрывающийся список, и выберите ячейку или диапазон для размещения раскрывающегося списка, например, G1: G4, и щелкните Данные > проверка достоверности данных. Смотрите скриншот:
4. в проверка достоверности данных диалоговое окно, нажмите Настройки Вкладка и выберите Список из Разрешить раскрывающийся список, затем введите = Страна (Страна - это имя, которое вы определили для исходного диапазона на шаге 2, вы можете изменить его по своему усмотрению) в поле Источник. Смотрите скриншот:
5. Нажмите OK, теперь проверка внешних данных создана.
Создать проверку внешних данных в другой книге
Чтобы создать проверку внешних данных в другой книге, вам также необходимо использовать диапазон имен.
Возьмем, к примеру, создание раскрывающегося списка.
1. Создайте нужные исходные значения на листе, затем выберите исходные значения и перейдите к Имя Box чтобы присвоить исходному диапазону имя, и нажмите Enter ключ, возьми CusName например. Смотрите скриншот:
2. Затем перейдите к книге, которую вы хотите создать раскрывающийся список, выберите пустой столбец на листе, например столбец J, и щелкните Формулы > Определить имя. Смотрите скриншот:
3. в Новое имя диалоговом окне введите имя в поле Имя и фамилия поле и выберите Workbook из Объем список, а затем введите эту формулу = Source.xlsx! CustName (Источник - это имя книги, в которой находятся исходные данные, а CustName - это имя диапазона, которое вы создали для исходных данных на шаге 1, вы можете изменить их по своему усмотрению) в Относится к текстовое окно. Смотрите скриншот:
4. Нажмите OK. Затем выберите диапазон, в котором вы хотите создать внешний раскрывающийся список, L1: L4, и нажмите Данные > проверка достоверности данных. Смотрите скриншот:
5. в проверка достоверности данных диалоговое окно, нажмите Настройки Вкладка и выберите Список из Разрешить раскрывающийся список и введите эту формулу = MyCustList (MyCustList - это имя диапазона, которое вы даете пустому столбцу на шаге 3, вы можете изменить его по своему усмотрению) в Источник коробка. Смотрите скриншот:
6. Нажмите OK. Теперь проверка внешних данных в другой книге создана. Смотрите скриншот:
Внимание: Только когда две книги открыты одновременно (книга исходных данных и книга проверки данных), проверка внешних данных может работать правильно.
При проверке данных легко можно указать правила, которым должны отвечать данные. К сожалению, Excel настаивает, что списки, которые используются при проверке, должны находиться на том же рабочем листе, что и проверяемые данные. К счастью, всегда есть способы уклониться от выполнения этого требования.
В этом трюке мы познакомим вас с двумя способами проверки данных на основе списка на другом листе. Первый из них использует преимущество именованных диапазонов Excel (которые подробнее рассматриваются в главе 3), а во втором применяется вызов функции.
Способ 1. Именованные диапазоны
Возможно, самый простой и быстрый способ преодолеть барьеры, которые воздвигает Excel при проверке данных, — присвоить имя диапазону, где содержится список. Для создания именованного диапазона выделите ячейки, содержащие список, и введите имя в поле имени строки формул. Для выполнения этого примера мы будем предполагать, что диапазону присвоено имя MyRange.
Выделите ячейку, в которой должен будет появиться раскрывающийся список, а затем выберите команду Данные → Проверка (Data → Validation). В поле Тип данных (Allow) выберите пункт Список (List), а в поле Источник (Source) введите =MyRange . Щелкните на кнопке ОК. Поскольку вы использовали именованный диапазон, ваш список (хотя он и находится на другом листе) теперь можно использовать как список проверки.
Способ 2. Функция ДВССЫЛ
Функция ДВССЫЛ (INDIRECT) позволяет ссылаться на ячейку, содержащую текст, представляющий адрес ячейки. Эту ячейку можно использовать как локальную ссылку, даже если она получает данные из другого листа. Можно применять эту возможность для связи с листом, где расположен список.
Предположим, список находится на листе Sheetl в диапазоне $А$1:$А$8 . Щелкните любую ячейку на другом листе, где должен появиться этот список проверки (список выборки). Затем выберите команду Данные → Проверка (Data → Validation) и в поле Тип данных (Allow) выберите пункт Список (List). В поле Источник (Source) введите следующий код: =INDIRECT("Sheetl!$А$1:$А$8") , в русской версии Excel =ДВССЫЛ("Sheetl!$A$1:$A$8") . Удостоверьтесь, что флажок Список допустимых значений (In-Cell) установлен, и щелкните на кнопке ОК. Список на листе Sheetl должен появиться в раскрывающемся списке проверки.
Если имя листа, на котором расположен список, содержит пробелы, необходимо использовать следующий синтаксис функции ДВССЫЛ (INDIRECT): =INDIRECT("'Sheetl'!$А$1:$А$8") , в русской версии Excel =ДВССЫЛ("'Sheetl'!$А$1:$А$8") . Различие заключается в том, что здесь после первой кавычки стоит один апостроф, а второй апостроф находится перед восклицательным знаком.
Полезно всегда использовать одиночные апострофы, независимо от того, содержит имя пробелы или нет. С апострофами вы все так же сможете ссылаться на листы с именами без пробелов, и это также упростит внесение изменений позже.
Преимущества и недостатки обоих способов
Читайте также: