|
||
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны | Справка по форуму | Файлообменник | |
Поиск в этой теме |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,038
|
Добавил пример связанных списков с динамически изменяемыми диапазонами на VBA. Можно добавлять значения в динамическую таблицу - главное, потом ее отсортировать в порядке возрастания по всем трем столбцам сразу. И при получении фокуса выпадающие списки имеют обновленные значения, причем автоматически отбираются уникальные значения. А без VBA построить хоть какую то БД на базе Excel выльется в:
|
|||
|
||||
ГИП Регистрация: 07.06.2015
Сообщений: 1,254
|
Цитата:
----- добавлено через ~10 мин. ----- Offtop: Добавлю ещё, что требования заказчика к софту обычно выглядят так: - Чтобы я такая на кнопочку "клац", а оно мне сразу "у-ух", а я вся такая "вау-у-у!" |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,038
|
Ну во первых сортировку таблицы можно тоже программно сделать по какому то условию (событию)-пару десятков строк кода, насколько помню. А во вторых - можно и без сортировки, будет кода больше просто. И в списке будет неотсортированный по порядку список уникальных значений. Хотя и это решается. Просто если есть желание все писать в виде кода, то зачем вообще нужен Excel?)
|
|||
|
||||
Регистрация: 09.09.2016
Сообщений: 31
|
Я мазохист, я хочу так, Сергей)
----- добавлено через ~2 мин. ----- Может меня Вы не понимаете!? Порядок использования БД по пунктам: 1. Выбираю наименование 2. Марку стали 3. Размеры+доп. тех.параметры (производители производят например лист или уголок в огромном количестве размеров, но в тоже время не все размеры которые используются в строительстве, чтобы мне не создавать 200 строк, я хочу все уместить в одной указав интервалом от и до) Мне выпадает список производителей, которые производят продукцию которая мне нужна, далее я ищу дилеров. 4. Выбираю регион (все круто у меня в таблице, но мне не нравиться высота строки одного наименования из-за большого списка дилеров, который я должен вносить в каждую строку этот список, из-за этого я хочу скрыть этот список и установить дополнительный фильтр в одну ячейку региона дилера) ----- добавлено через ~6 мин. ----- Основной вопрос как создать дополнительные фильтры в столбце "регион" (дилера) при отсутствия такой возможности в рамках эксель, то придумать альтернативный вариант |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,038
|
1. Начнем с того, сколько типов наименований, марок сталей и т.д.? Как часто они меняются? Почему не сделать в виде отдельных таблиц, в основной БД выпадающие списки на базе проверок (даже без VBA)?
2. Работа с диапазоном на основе скрытых столбцов - уже писал в другой вашей ветке. 3. По поводу диапазонов: Цитата:
p.s. Мазохизм будет, когда забьете туда сортамент - и окажется, что в этой таблице кроме вас никто и не сможет работать) |
|||
|
||||
Регистрация: 09.09.2016
Сообщений: 31
|
Очень много наименований и марок стали. Не совсем понял второй вопрос, в смысле - меняются? Если завод производит трубу бесшовную больших диаметров, то он не будет через год катать электросварную маленьких диаметров... По множеству причин не удобно будет создавать несколько отдельных таблиц.
С сортаментом уже всё продумано, с этим пока вопросов нет. |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,038
|
у вас уже есть фильтр по регионам, а не хотите высокую ячейку производителя - дублируйте имя производителя для каждого дилера. Просто не понимаю, что хотите...
|
|||
|
||||
ГИП Регистрация: 07.06.2015
Сообщений: 1,254
|
Цитата:
Цитата:
1. Формирование динамического списка 1 путём выборки из двухмерного массива 1 по заданным условиям. 2. Формирование динамического списка 2 путём выборки из двухмерного массива 1 по условию, заданному в динамическом списке 1. 3. Поиск значения в двухмерном массиве 1 по условию, заданному в динамическом списке 2. ----- добавлено через ~5 мин. ----- В расширенном варианте: -//-//- 4. При формировании динамического списка 1 произвести анализ содержимого двухмерного массива 1 методом поиска подстроки в строке и методом поиска принадлежности значения интервалу. |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,038
|
это понятно. Меня вызывает сильнее сомнение в работоспособности варианта ТС при забитых строках данных в количестве многих тысяч. Которые еще забить надо, что при таскании таблицы туда-сюда из-за ее ширины займет тоже немало времени.
|
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,038
|
Такая таблица может иметь место - как БД на скрытом листе, с которой пользователь напрямую не работает. А на отдельных листах сделаны частичные таблицы для ввода/модификации/выбора, ссылающиеся формулами/макросами на эту главную таблицу и обратно.
|
|||
|
||||
ГИП Регистрация: 07.06.2015
Сообщений: 1,254
|
Цитата:
----- добавлено через ~8 мин. ----- Из нестандартных решений приходит в голову разделить эксель на 2 книги: в одной чисто БД, в другой - интерфейс и программный код. Чтобы не захламлять саму изначальную БД. |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,038
|
вообще то надстройки есть). Но как раз есть смысл, что если подобное делать на Excel - то использовать по возможности функционал листов экселя. И дополнять их кодом vba - заменяя ручные операции пользователя, недостающий функционал. А не пытаться переписать на достаточно медленном VBA гораздо более быстрые встроенные операции на листах)
|
|||
|
||||
ГИП Регистрация: 07.06.2015
Сообщений: 1,254
|
И тогда уже программными средствами переписывать данные в нужном виде из исходной БД в контейнер в файл с программным кодом. А потом уже из контейнера получать нужную информацию простейшими методами.
----- добавлено через ~4 мин. ----- Цитата:
----- добавлено через ~7 мин. ----- Я часто пишу различные расчётные программы в экселе. И каждый раз всё упирается в то, что листы захламляются полностью. Этого нужно избежать. ----- добавлено через ~21 мин. ----- В общем, завтра поколдую, выложу. |
|||
|
Опции темы | Поиск в этой теме |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как извлечь данные из файла Excel | LexaI | Программирование | 14 | 12.04.2014 20:14 |
Подскажите как в Excel совместить две ячейки в одну | Львиное сердце | Прочее. Программное обеспечение | 5 | 31.08.2009 13:58 |
Ламерский вопрос по Excel: как сделать, чтобы не слетало форматирование исходных ячеек при вырезании и перетаскивании? | kp+ | Прочее. Программное обеспечение | 7 | 23.02.2009 15:27 |
Сохранения адреса ячейки в Excel | Малюк | Прочее. Программное обеспечение | 2 | 30.03.2008 09:33 |