Excel двссыл при вычислении источник возникает ошибка в excel

 

lea

Пользователь

Сообщений: 74
Регистрация: 01.01.1970

Есть три списка a1,a…c3. На листе1 требуется создать зависимые списки.  
Как устранить сл. ошибки:  
1. Спискам присваиваю имена a,b, но третьему (с1,с2,с3) списку имя «с» — запрещает (недопустимое имя файла)?  
2. При вводе во втором, зависимом списке функции ДВССЫЛ($C$7) — выдает ошибку: «При вычислении «Источник» возникает ошибка.Продолжить?»?  
3. Бывает, что каким-то образом функция присваивается, но при имени третьего списка, например, сс — вместо с, не работает зависимость, т.е. во втором списке (лист1) не выводятся параметры с1,с2,с3?

 

Ни из объяснения, ни из файла ни чего не понял :(  
Но, на всякий случай, латинские буквы «C» и «R» в качестве имен применять нельзя, они зарезервированы: «С» — столбец; «R»- строка.

 

Пробуйте. Имена C и R действительно создать нельзя.

 

lea

Пользователь

Сообщений: 74
Регистрация: 01.01.1970

{quote}{login=Казанский}{date=16.08.2011 11:16}{thema=}{post}Пробуйте. Имена C и R действительно создать нельзя.{/post}{/quote}  

  Понял. Работает. А как быть тогда, когда оба списка на Листе1 образованы от объединенных ячеек? У меня опять выползает ошибка «Источника».

 
 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

{quote}{login=lea}{date=17.08.2011 04:38}{thema=Re: }{post}{quote}{login=Казанский}{date=16.08.2011 11:16}{thema=}{post}{/post}{/quote} А как быть тогда, когда оба списка на Листе1 образованы от объединенных ячеек? У меня опять выползает ошибка «Источника».{/post}{/quote}Не используйте объединённые ячейки — облегчите себе жизнь.

 

lea

Пользователь

Сообщений: 74
Регистрация: 01.01.1970

{quote}{login=Юрий М}{date=17.08.2011 09:08}{thema=Re: Re: }{post}{quote}{login=lea}{date=17.08.2011 04:38}{thema=Re: }{post}{quote}{login=Казанский}{date=16.08.2011 11:16}{thema=}{post}{/post}{/quote} А как быть тогда, когда оба списка на Листе1 образованы от объединенных ячеек? У меня опять выползает ошибка «Источника».{/post}{/quote}Не используйте объединённые ячейки — облегчите себе жизнь.{/post}{/quote}  

  это 2 поля из бланка. надо чтобы графически виглядело именно объединенными ячейками.

 

lea

Пользователь

Сообщений: 74
Регистрация: 01.01.1970

{quote}{login=Маугли}{date=17.08.2011 07:46}{thema=}{post}Так?{/post}{/quote}  
Так и не догадался, что было поменяно так, как мне надо. Можно подробнее объяснить механизм?

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

>> это 2 поля из бланка. надо чтобы графически виглядело именно объединенными ячейками.  
===  
Многократно обсуждалось: Формат — Ячейка — Выравнивание — по горизонтали — ПО ЦЕНТРУ ВЫДЕЛЕНИЯ. Визуально ничем не будет отличаться от объединённых ячеек.

 

lea

Пользователь

Сообщений: 74
Регистрация: 01.01.1970

{quote}{login=Казанский}{date=16.08.2011 11:16}{thema=}{post}Пробуйте. Имена C и R действительно создать нельзя.{/post}{/quote}  

  Господа, так получается во второй выпадающей ячейке (зависимой) количество списков, которые можно было бы использовать, ограничено количеством букв латинского алфавита, исключая C и R.  

  Пример: =ДВССЫЛ(F5) обрабатывает только списки с ИМЕНАМИ от a…z  
       =ДВССЫЛ(F5&»_») обрабатывает только списки с ИМЕНАМИ вида a_…z_  

  А если списков штук сто будет как у меня?

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Называйте списки не только одной буквой, например: «lea», «lea_умный», «Я_знаю_32_буквы» :)

 

lea

Пользователь

Сообщений: 74
Регистрация: 01.01.1970

{quote}{login=vikttur}{date=18.08.2011 03:28}{thema=}{post}Называйте списки не только одной буквой, например: «lea», «lea_умный», «Я_знаю_32_буквы» :){/post}{/quote}  
в таком формате выдает ошибку. можно ли файл тогда для наглядности?

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Можно. Прикладывайте, на нем соорудим :)

 

lea

Пользователь

Сообщений: 74
Регистрация: 01.01.1970

{quote}{login=vikttur}{date=18.08.2011 03:32}{thema=}{post}Можно. Прикладывайте, на нем соорудим :){/post}{/quote}  

  Можно конечно. Не могу добиться выпадания списка lea  при такой функции в ячейке E7: =ДВССЫЛ(E7)

 

DV_68

Пользователь

Сообщений: 628
Регистрация: 22.12.2012

{quote}{login=lea}{date=18.08.2011 03:24}{thema=Re: }{post}А если списков штук сто будет как у меня?{/post}{/quote}  
Тогда попробуйте без ДВССЫЛ:

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

 

lea

Пользователь

Сообщений: 74
Регистрация: 01.01.1970

{quote}{login=DV}{date=18.08.2011 03:47}{thema=Re: Re: }{post}{quote}{login=lea}{date=18.08.2011 03:24}{thema=Re: }{post}А если списков штук сто будет как у меня?{/post}{/quote}  
Тогда попробуйте без ДВССЫЛ:{/post}{/quote}  

  хороший вариант. а если дописываются строки к списка, типа: a4,a5,…b4,b5,…? так скажем динамические списки?

 

lea

Пользователь

Сообщений: 74
Регистрация: 01.01.1970

{quote}{login=DV}{date=18.08.2011 03:47}{thema=Re: Re: }{post}{quote}{login=lea}{date=18.08.2011 03:24}{thema=Re: }{post}А если списков штук сто будет как у меня?{/post}{/quote}  
Тогда попробуйте без ДВССЫЛ:{/post}{/quote}  

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

 

lea

Пользователь

Сообщений: 74
Регистрация: 01.01.1970

а если списки будут динамическими?

 

lea

Пользователь

Сообщений: 74
Регистрация: 01.01.1970

в случае без ДВССЫЛ придется прописывать диапазрны, а во втором варианте — копировать имена списков на лист с выпадающими ячейками?

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

С динамическими списками «недоделанная» ДВССЫЛ() отказывается работат.  
присмотритесь к варианту DV. Формулку можно сократить, применив СМЕЩ(), для имени летучесть не страшна (как выяснилось не так давно).

 

DV_68

Пользователь

Сообщений: 628
Регистрация: 22.12.2012

{quote}{login=vikttur}{date=18.08.2011 04:01}{thema=}{post}…для имени летучесть не страшна (как выяснилось не так давно).{/post}{/quote}  
Ну это логично, т.к. имя само по себе летуче.  
А можно ссылочку на тему?

 

lea

Пользователь

Сообщений: 74
Регистрация: 01.01.1970

а как с функцией =ИНДЕКС реализовать динамические списки?

 

DV_68

Пользователь

Сообщений: 628
Регистрация: 22.12.2012

{quote}{login=lea}{date=18.08.2011 04:06}{thema=}{post}а как с функцией =ИНДЕКС реализовать динамические списки?{/post}{/quote}  
они в примере уже реализованы

 

DV_68

Пользователь

Сообщений: 628
Регистрация: 22.12.2012

Ошибся, хотя задумка была вложена)))

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Ссылки нет, есть цитата. Можно сказать, мини-урок.  

  ZVI. О летучести имен и УФ.  
«Мы часто неосознанно избегаем использования летучих функций в формулах имен, в частности, в формулах динамических диапазонов для выпадающих списков. При этом формулы становятся длинными и плохо читаемыми. Но дело в том, что опасения насчет пересчета формул таких имен при каждом пересчете формул листа (т.е общего замедления Excel) лишены оснований.  
Формула динамического диапазона, на основании которой строится выпадающий список, не пересчитывается при пересчете листа, независимо от того, используются в ней летучие функции или нет. Пересчет формул имен происходит только при попытке выбора значения из выпадающего списка.  
А вот формула ячейки, которая ссылается на имя с летучими функциями, действительно сама может стать летучей, но только если в формуле этой ячейки срабатывают условия для обращения к имени.  
Например, если имя ЭтоДата имеет в RefersTo летучую формулу =СЕГОДНЯ()  
то формула ячейки =ЕСЛИ(A1=1; ЭтоДата) станет летучей, только если A1=1  
Раз уж затронул эту тему, напомню, что формулы условного форматирования в ячейках видимой части экрана пересчитываются при любом изменении ячеек этой (и только этой) видимой части, или даже при перерисовке видимой части экрана от навигации. Поэтому и имена, на которые ссылаются формулы условного форматирования, также пересчитываются. Это нужно учитывать, но не бояться :-)  
Вывод: в формулах именованных диапазонов для выпадающих списков можно и полезно использовать летучие функции.»

 

lea

Пользователь

Сообщений: 74
Регистрация: 01.01.1970

{quote}{login=DV}{date=18.08.2011 04:07}{thema=Re: }{post}{quote}{login=lea}{date=18.08.2011 04:06}{thema=}{post}а как с функцией =ИНДЕКС реализовать динамические списки?{/post}{/quote}  
они в примере уже реализованы{/post}{/quote}  

  дописал к столбцам на листе2 a4,b4,c4 соответственно, но в выпадающих списках эти новые данные не отобразились.

 

lea

Пользователь

Сообщений: 74
Регистрация: 01.01.1970

задумка, кстати, тоже полезная, но нужна динамика ((

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

 

lea

Пользователь

Сообщений: 74
Регистрация: 01.01.1970

#30

18.08.2011 16:40:24

Супер! Постараюсь теперь переварить строку =общ ))

Хитрости »

1 Май 2011              197727 просмотров


Связанные выпадающие списки

Скачать файл, используемый в видеоуроке:

  Связанные выпадающие списки.xls (216,5 KiB, 3 066 скачиваний)


Чтобы понять о чем пойдет речь в статье сначала необходимо понимать что такое выпадающий список и как его создать. Теперь попробуем разобраться что значит выражение «связанный выпадающий список». Я бы еще назвал такой список зависимым. Т.е. когда список значений одного выпадающего списка зависит от значения, выбранного в другом выпадающем списке или просто забитого в ячейку. Представим ситуацию: есть ячейка А2. В ней создан выпадающий список со значениями: Овощи, Фрукты, Мясо, Напитки. А в ячейке В2 нам нужен такой список, чтобы значения этого самого списка изменялись в зависимости от того, какое значение мы укажем в ячейке А2 — т.е. список выбранной категории продуктов. Например выбрали в А2 значение Овощи — в В2 появился выпадающий список, содержащий значения: Морковь, Капуста, Картошка, Редиска, Помидоры. Выбрали в А2 Мясо — в В2 появился выпадающий список, содержащий значения: Говядина, Телятина, Свинина, Курица, Индейка. И т.д.

Подготовка
Для начала нам потребуется создать все эти списки. Что-то вроде этого:
Списки

Далее для каждого из этих списков необходимо назначить именованный диапазон. Создать можно любым способом из описанных в этой статье. Главное помнить — если сами списки расположено на листе, отличном от того, на котором списки выпадающие — то обязательно создавать именованный диапазон с назначением области действия — Книга.
В приложенном к статье примере диапазоны имеют имена категорий — их можно видеть в заголовках.
Если ваши категории содержат пробел — необходимо заменить его на нижнее подчеркивание (_) или удалить, т.к. в качестве именованного диапазона такое значение не подойдет и ничего в результате не получится.

Создание зависимых списков
В ячейке А2 создаем «список списков» — основной список, на основании значений которого будет создаваться второй список. Этот список может быть создан любым способом (как создать выпадающий список). Назовем его Список категорий.
В ячейке В2 потребуется создать список на основании формулы, хоть по сути и так же, как и остальные: вкладка Данные (Data)Проверка данных (Data validation)Список (List). Но теперь вместо прямого указания имени списка необходимо указать ссылку на именованный диапазон, который мы выберем в Списке категорий(ячейка А2), на основании его имени. В этом нам поможет функция ДВССЫЛ (INDIRECT). Просто записываем эту формулу в поле Источник (Source): =ДВССЫЛ($A2)
Список через ДВССЫЛ
На что обратить внимание: если вы планируете распространять такой список на столбец, то ссылка должна выглядеть именно так: $A2. Перед цифрой не должно быть знака доллара ($A$2 — неправильно). Иначе зависимый список будет всегда формироваться исключительно на основании значении ячейки А2.

Источник из другой книги
Сами списки товара могут находится и в другой книге. Если книга называется Книга со списком.xls и на Лист1 в ячейке А1 в этой книге находится имя нужного нам списка, то формула будет выглядеть так:
=ДВССЫЛ(«‘[Книга со списком.xls]Лист1’!»&$A$1)
На что обратить внимание: лучше всегда перед именем книги и после имени листа ставить апостроф — ‘. Так вы избежите проблем и недопонимания, если имя листа или книги содержит пробелы и иные специфические символы. В отличии от списков внутри одной книги в данном случае знак доллара должен быть и перед буквой и перед цифрой. В ином случае возможны ошибки (если, конечно, это не было сделано специально с пониманием того, что делалось).

Ограничения: данный способ создания списков хорош, но не обошлось и без ложки дегтя. Даже двух:

  1. обе книги должны быть открыты. Если вы закроете книгу со списками, то получите ошибку — выпадающие списки просто перестанут работать
  2. созданные подобным образом связанные списки не будут работать с динамическими именованными диапазонами

И ничего с этими ограничениями не поделать при подобном подходе.


Скачать пример

  Tips_Lists_Connect_Validation.xls (26,5 KiB, 18 103 скачиваний)

Так же см.:
Выпадающие списки
Именованные диапазоны
Динамические именованные диапазоны


Статья помогла? Поделись ссылкой с друзьями!

  Плейлист   Видеоуроки


Поиск по меткам



Access
apple watch
Multex
Power Query и Power BI
VBA управление кодами
Бесплатные надстройки
Дата и время
Записки
ИП
Надстройки
Печать
Политика Конфиденциальности
Почта
Программы
Работа с приложениями
Разработка приложений
Росстат
Тренинги и вебинары
Финансовые
Форматирование
Функции Excel
акции MulTEx
ссылки
статистика

Функция ДВССЫЛ возвращает ссылку, которая задана текстовой строкой. К примеру, формула = ДВССЫЛ (А3) аналогична формуле = А3. Но для этой функции ссылка является просто текстовой строкой: ее можно изменять формулами.

Функция применяется для изменения ссылки на ячейку без изменения самой формулы, выведения значений лишь из четных/ нечетных строк, транспонирования таблиц и др.

Синтаксис функции с описанием

Аргументы:

  1. Ссылка на текст. Обязательный аргумент, содержащий ссылку на ячейку в формате текстовой строки. Например, =ДВССЫЛ («А1») или =ДВССЫЛ («Лист 2!А3»).
  2. А1 – логическое значение для определения типа ссылки. Необязательный аргумент. Если имеет значение ИСТИНА или опущен, то ссылка на текст воспринимается как ссылка типа А1 (адрес ячейки указан явно). Значение ЛОЖЬ – как ссылка в стиле R1C1 (ссылка на ячейку с формулой, отсылающей к другой ячейке).

Почему при работе функции ДВССЫЛ возникают ошибки:

  1. Значение аргумента «ссылка на ячейку» является недопустимой ссылкой – ошибка #ССЫЛКА!.
  2. Обязательный аргумент ссылается на другую книгу (является внешней ссылкой), которая недоступна (закрыта) – ошибка #ССЫЛКА!. При создании подобных формул внешний источник данных должен быть открыт.
  3. Значение обязательного аргумента ссылается на превышающий предел диапазон – ошибка #ССЫЛКА!. Функция может обработать до 1048576 строк или 16384 столбцов.



Функция ДВССЫЛ в Excel: примеры

Начнем с хрестоматийного примера, чтобы понять принцип работы функции.

Имеется таблица с данными:

Таблица с данными.

Примеры функции ДВССЫЛ:

ДВССЫЛ.

Рассмотрим практическое применение функции. На листах 1, 2, 3, 4 и 5 в одних и тех же ячейках расположены однотипные данные (информация об образовании сотрудников фирмы за последние 5 лет).

2012-2013.

Нужно на основе имеющихся таблиц составить итоговую таблицу на отдельном листе, собрав данные с пяти листов. Сделаем это с помощью функции ДВССЫЛ.

Пример1.

Пишем формулу в ячейке В4 и копируем ее на всю таблицу (вниз и вправо). Данные с пяти различных листов собираются в итоговую таблицу.

Теперь из итоговой таблицы извлечем только нечетные строки. Для удобства пронумеруем столбцы и строки.

Итоговая таблица.

Чтобы получить только нечетные записи, используем формулу:

Пример2.

Для выведения четных строк:

Результат.
Примечание. Функция СИМВОЛ возвращает символ по заданному коду. Код 65 выводит английскую букву A. 66 – B. 67 – С.

Допустим, у пользователя имеется несколько источников данных (в нашем примере – несколько отчетов). Нужно вывести количество сотрудников, основываясь на двух критериях: «Год» и «Образование». Для поиска определенного значения в базе данных подходит функция ВПР.

Чтобы функция сработала, все отчеты поместим на один лист.

Все отчеты.

Но ВПР информацию в таком виде не сможет переработать. Поэтому каждому отчету мы дали имя (создали именованные диапазоны). Отдельно сделали выпадающие списки: «Год», «Образование». В списке «Год» – названия именованных диапазонов.

Год.

Задача: при выборе года и образования в столбце «Количество» должно появляться число сотрудников.

Если мы используем только функцию ВПР, появится ошибка:

Ошибка НД.

Программа не воспринимает ссылку D2 как ссылку на именованный диапазон, где и находится отчет определенного года. Excel считает значение в ячейке текстом.

Готово.

Исправить положение помогла функция ДВССЫЛ, которая возвращает ссылку, заданную текстовой строкой.

Функции ВПР и ДВССЫЛ в Excel

Теперь формула работает корректно. Для решения подобных задач нужно применять одновременно функции ВПР и ДВССЫЛ в Excel.

Предположим, нужно извлечь информацию в зависимости от заданного значения. То есть добиться динамической подстановки данных из разных таблиц. К примеру, указать количество сотрудников с незаконченным высшим образованием в 2015 и в 2016 году. Сделать так:

Выборка значений.

В отношении двух отчетов сработает комбинация функций ВПР и ЕСЛИ:

ВПР и ЕСЛИ.

Но для наших пяти отчетов применять функцию ЕСЛИ нецелесообразно. Чтобы возвратить диапазон поиска, лучше использовать ДВССЫЛ:

Пример3.

  • $A$12 – ссылка с образованием (можно выбирать из выпадающего списка);
  • $C11 – ячейка, в которой содержится первая часть названия листа с отчетом (все листы переименованы: «2012_отчет», 2013_отчет» и т.д.);
  • _отчет!A3:B10 – общая часть названия всех листов и диапазон с отчетом. Она соединяется со значением в ячейке С11 (&). В результате получается полное имя нужного диапазона.

Таким образом, эти две функции выполняют подобного рода задачи на отлично.

Делаю зависимые списки для документа excel. Но у меня вылетает ошибка «при вычислении «источник» возникает ошибка»

Не могу понять в чем дело.
Вот ссылка на документ: https://yadi.sk/i/zqqR6l01wL3xz
Ошибка при создании зависимого списка в разделе «Манипуляции/товар»


  • Вопрос задан

    более трёх лет назад

  • 1780 просмотров

Пригласить эксперта

Всё у вас работает. Выберите значение из списка в ячейке C2, увидите список в ячейке D2.


  • Показать ещё
    Загружается…

14 апр. 2023, в 01:55

1000 руб./в час

13 апр. 2023, в 23:50

3000 руб./за проект

13 апр. 2023, в 23:18

1000 руб./за проект

Минуточку внимания

Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще…Меньше

В этой статье описаны синтаксис формулы и использование функции ДВССЫЛ в Microsoft Excel.

Описание

Возвращает ссылку, заданную текстовой строкой. Ссылки немедленно вычисляются для вывода их содержимого. Функция ДВССЫЛ используется, если требуется изменить ссылку на ячейку в формуле без изменения самой формулы.

Синтаксис

ДВССЫЛ(ссылка_на_текст;[a1])

Аргументы функции ДВССЫЛ описаны ниже.

  • Ссылка_на_текст    — обязательный аргумент. Ссылка на ячейку, которая содержит ссылку в стиле А1 или R1C1, имя, определенное как ссылка, или ссылку на ячейку в виде текстовой строки. Если значение аргумента «ссылка_на_текст» не является допустимой ссылкой, функция ДВССЫЛ возвращает значение ошибки #ССЫЛКА!.

    • Если значение аргумента «ссылка_на_ячейку» является ссылкой на другую книгу (внешней ссылкой), другая книга должна быть открыта. В противном случае функция ДВССЫЛ возвращает значение ошибки #ССЫЛКА!. Примечание.Поддержка внешних ссылок в Excel Web App отсутствует.

    • Если значение аргумента «ссылка_на_текст» является ссылкой на диапазон ячеек, превышающий предельное число строк 1 048 576 или столбцов 16 384 (XFD), функция ДВССЫЛ возвращает значение ошибки #ССЫЛКА!.

      Примечание.    Этот результат отличается от результата, получаемого в более ранних версиях приложения Excel, чем Microsoft Office Excel 2007, в которых превышение предела игнорируется и возвращается значение.

  • A1    — необязательный аргумент. Логическое значение, определяющее тип ссылки, содержащейся в ячейке «ссылка_на_текст».

    • Если аргумент «a1» имеет значение ИСТИНА или опущен, «ссылка_на_ячейку» интерпретируется как ссылка в стиле A1.

    • Если аргумент «a1» имеет значение ЛОЖЬ, «ссылка_на_ячейку» интерпретируется как ссылка в стиле R1C1.

Пример

Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.

Данные

B2

1,333

B3

45

Владимир

10

5

62

Формула

Описание

Результат

‘=ДВССЫЛ(A2)

Значение ссылки в ячейке A2. Ссылка на ячейку B2, содержащая значение 1,333.

1,333

‘=ДВССЫЛ(A3)

Значение ссылки в ячейке A3. Ссылка на ячейку B3, содержащая значение 45.

45

‘=ДВССЫЛ(A4)

Поскольку для ячейки B4 определено имя «Владимир», ссылка на это имя указывает на ячейку B4, содержащую значение 10.

10

‘=ДВССЫЛ(«B» и A5)

Объединяет «B» со значением в ячейке A5, т. е. 5. Она, в свою очередь, ссылается на ячейку B5, содержащую значение 62.

62

Нужна дополнительная помощь?

Понравилась статья? Поделить с друзьями:

А вот еще интересные статьи:

  • Excel двссыл по английски
  • Excel двссыл на умную таблицу
  • Excel двссыл для столбцов
  • Excel двссыл для диапазона
  • Excel двойные кавычки в тексте

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии