Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Поиск имени диапазона
 
Если второй связанный список привязан жестко к первому списку все работает
СМЕЩ(Table.ListFirst[[#Заголовки];[Стартовые затраты,руб.:1]];1;ПОИСКПОЗ(Report!$C$9;Table.ListFirst[#Заголовки];0)-1;СЧЁТЗ(СМЕЩ(Table.ListFirst[[#Заголовки];[Стартовые затраты,руб.:1]];1;ПОИСКПОЗ(Report!$C$9;Table.ListFirst[#Заголовки];0)-1;ЧСТРОК(Table.ListFirst[Стартовые затраты,руб.:1]);1));1)

Почему при попытке Report!$C$9 поменять СМЕЩ(Table.Report[[#Заголовки];[ №]];СТРОКА()-СТРОКА(Table.Report[#Заголовки]);СТОЛБЕЦ()-СТОЛБЕЦ(Table.Report[[#Заголовки];[ №]])-1;1;1) список не находиться  
Поиск имени диапазона
 
В файле, который я присоединил, есть таблица "Table.Report" на листе "Report". В ее области "Table.Report[[Столбец 1]:[Столбец 3]]", помещены выпадающие списки, источники которых вызываются функцией: "ВПР(ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-1);ИСТИНА);SearchList;2;0)",т.е. происходит поиск имени диапазона, по значению в соседнем столбце.
В примере "Выпадающий список с добавлением новых элементов", жестко прописан один список, который проверяется на наличие нового элемента, и его добавление в этот список. А надо что бы происходил поиск аналогично вызову источника для этого списка.

Надо, чтобы макрос проверял список на наличие нового элемента, и при его отсутствии добавлял новый элемент. Какой список,  имя (имя диапазона) которого найдет по значению, хранящемся в соседней слева ячейки от списка в "SearchList" таблицы Table.DBLists, где каждому значению, соответствует имя списка (имя диапазона)..

Просто можно прописать жестко все имена списков, но если списков много, это не очень удобно, и я хотел от этого уйти. А формулу я вставил, на место где жестко указывается имя списка проверяемого на наличие элемента, и куда он добавляется. Думал так будет понятнее.

Чтобы можно было сделать каскадные списки, древовидные.
Поиск имени диапазона
 
Хорошо
Грубо, говоря как это вставить в код: ВПР(ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-1);ИСТИНА);SearchList;2;0)
Поиск имени диапазона
 
Добрый вечер, господа.
Уже писал в рубрике приемы (Выпадающий список с добавлением новых элементов), там не кто не ответил.
С excel-ем знаком давно, многое чего могу умею, но не программировать, не получается.

Соответственно в приеме описано, как сделать выпадающий список с добавлением нового элемента. Прекрасный прием.
Я попытался поискать как можно сделать так, чтобы в коде происходил поиск имени списка, который прописывается жестко в коде приема, по значению в соседней левой ячейки. Имя списка, храниться в диапазоне "Searchlist", отдельная таблица (два столбца:наименование и имя списка)
Код
Private Sub Worksheet_Change(ByVal Target As Range) 
Dim lReply As Long 

   If Target.Cells.Count > 1 Then Exit Sub 
       If Not Intersect(Target, Range("Table.Report[[Столбец 1]:[Столбец 3]]";)) Is Nothing Then 
           If IsEmpty(Target) Then Exit Sub 
               If WorksheetFunction.CountIf(Worksheets("DBLists";).Range("[B]ВПР(ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-1);ИСТИНА);SearchList;2;0)[/B]";), Target) = 0 Then 
                  lReply = MsgBox("Добавить введенное имя " & Target & " в выпадающий список?", vbYesNo + vbQuestion) 
                       If lReply = vbYes Then 
                          Worksheets("DBLists";).Range("List№1";).Cells(Worksheets("DBLists";).Range("[B]ВПР(ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-1);ИСТИНА);SearchList;2;0)[/B]";).Rows.Count + 1, 1) = Target 
                       End If 
               End If 
       End If 
End Sub

Дано:
В области Table.Report[[Столбец 2]:[Столбец 3]] установленны выпадающие списки, область приминения макроса.
Таблица Table.List, именной диапазон List имеет источник =Table.List[Название списка]
Таблица Table.List№1, именной диапазон List№1 имеет источник =Table.List№1[Название списка]
Таблица Table.List№2, именной диапазон List№2 имеет источник =Table.List№2[Название списка]
Таблица Table.List№3, именной диапазон List№3 имеет источник =Table.List№3[Название списка]
Есть таблица Table.DBList, именной диапазон SearchList имеет источник =Table.List№3[Название списка],

Надо что бы макрос:
Если в ячейки B7 "Значение списка 1", то в ячейки C7 вызывается выпадающий список, источником является диапазон "List№1". Если вводиться в ячейку C7 вводиться значение, которого нет в списке оно должно быть добавленно в список с диапазоном источника  "List№1".Если в ячейки B7 "Значение списка 2", то в ячейки C7 вызывается выпадающий список, источником является диапазон "List№2". Если вводиться в ячейку C7 вводиться значение, которого нет в списке оно должно быть добавленно в список с диапазоном источника  "List№2". Если в ячейки B7 "Значение списка 3", то в ячейки C7 вызывается выпадающий список, источником является диапазон "List№3". Если вводиться в ячейку C7 вводиться значение, которого нет в списке оно должно быть добавленно в список с диапазоном источника  "List№3".


Помогите, пожалуйста.
Изменено: gib.85 - 30.05.2017 13:55:16 (Уточнение задачи)
Нужна разработка. Взаимосвязанные списки отчета, работа с БД и т.д. (подробности в файле), Ищу программиста
 
Долго писал ТЗ, и все равно не дописал. Решил выложить, получить отклики, предложения, чтобы не стояло дело на месте, а началось обсуждение сроков и т.д..
Прошу прощения если что.
Файл не лезет, большой(((
Сейчас буду стараться сделать его меньше, кому интересно пишите отправлю на почту, для рассмотрения.
http://my-files.ru/yfos2p
Изменено: gib.85 - 21.02.2017 20:06:47
Многоуровневый нумерованный список подобно Word, Автонумерация строк таблицы
 
Эта тема в архиве
НЕ получается написать формулу
При добавлении новой строки, слетают последующие значения.
Может кто, что-то подсказать.
Многоуровневый нумерованный список подобно Word, Автонумерация строк таблицы
 
Такая же проблема, хотел бы продолжить тему.
Файлик приложил
Страницы: 1
Наверх