Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.05.2009, 23:04   #1
tae1980
Форумчанин
 
Регистрация: 02.02.2009
Сообщений: 842
По умолчанию Зависимые списки

Задача: ввести адрес вида: область, район, МО, нас.пункт, улица, дом. Каждый в отдельной строчки. Необходимо предусмотреть ввод названия из списка. Данный для списков хранятся в отдельном файле.
Содержание списков зависит от выбранных значений в других ячейках, например в каждом Муниципальном Образовании свой набор населенных пунктов, а в каждом нас.пункте свои улицы и т.п. Если предыдущий элемент не выбран, желательно указывать в списке все возможные значения, например если не выбран МО, то в списке все нас.пункты расположенные в выбранной области. А для отдельных полей возможно стоит ввести обязательность ввода предыдущих полей, например для улиц ИМХО необходимо обязательно указывать нас.пункт, если его нет, то выводим пустой список.

Вопрос:
1. Реально ли подобное?
2. Как лучше организовать структуру информации для списков. Рассматриваю вариант хранения информации по каждому району в отдельном файле.

Пример прилагается.
Вложения
Тип файла: rar Адрес.rar (6.3 Кб, 37 просмотров)
С уважением, Алексей.

Последний раз редактировалось tae1980; 03.05.2009 в 23:11.
tae1980 вне форума Ответить с цитированием
Старый 03.05.2009, 23:33   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Цитата:
Реально ли подобное?
Реально всё
Но я бы сделал ввод через форму - так, пожалуй, удобнее...

Можно и в ячейках всё это реализовать, но сложнее.
А на форме всё просто: пользователь выбрал область - форма автоматически загрузила в комбобокс "Район" список районов выбранной области, и т.д.

Цитата:
Как лучше организовать структуру информации для списков
Многое зависит от того, в каком виде сейчас хранятся списки областей, городов и улиц.
Не зная этого, сложно посоветовать что-либо конкретное...

Проще было бы в этом случае работать с базой данных...
Но если все эти данные хранятся в excel, то тоже можно что-нибудь придумать...
EducatedFool вне форума Ответить с цитированием
Старый 03.05.2009, 23:59   #3
tae1980
Форумчанин
 
Регистрация: 02.02.2009
Сообщений: 842
По умолчанию

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
Реально всё
Но я бы сделал ввод через форму - так, пожалуй, удобнее...

Можно и в ячейках всё это реализовать, но сложнее.
А на форме всё просто: пользователь выбрал область - форма автоматически загрузила в комбобокс "Район" список районов выбранной области, и т.д.
С формами еще ни разу не работал....
Есть примеры?
Пока весь интерфейс ввода данных реализован в ячейках, делать форму только для одной маленькой части ИМХО не слишком красиво.

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
Многое зависит от того, в каком виде сейчас хранятся списки областей, городов и улиц.
Не зная этого, сложно посоветовать что-либо конкретное...
В архиве есть файл с данными. На данном этапе можно заложить любой вид для данных.

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
Проще было бы в этом случае работать с базой данных...
Но если все эти данные хранятся в excel, то тоже можно что-нибудь придумать...
Лучшая база данных - текстовый файл в кодировке дос.
Пока все реализовано в экселе...
С уважением, Алексей.
tae1980 вне форума Ответить с цитированием
Старый 04.05.2009, 00:08   #4
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Цитата:
С формами еще ни разу не работал....
Есть примеры?
Примеров куча на форуме. Но проблема не в этом.
Реализация ввода данных - мелочь по сравнению с выборкой данных для ввода...

Цитата:
На данном этапе можно заложить любой вид для данных.
Это сейчас самое важное.
Если неправильно организовать хранение исходных данных (базу данных улиц и городов), то потом много времени придётся тратить на изменение (корректировку, пополнение) базы и реализацию выборки из неё нужных данных.

Цитата:
В архиве есть файл с данными.
Файл я смотрел. Он почти пустой.
Надо знать общий объём данных.
К примеру, если всего 2 области, в каждой по 5 городов, а в городе по 10 улиц - то всё можно впихнуть в один лист Excel
А если 10 областей, в каждой по 50 городов, а в городе по 100 улиц - то решение должно быть совершенно другим...
В каком виде сейчас хранятся все эти данные?

Впрочем, нюансов множество. Если есть Скайп, позвоните завтра вечером - может, смогу что посоветовать.
EducatedFool вне форума Ответить с цитированием
Старый 04.05.2009, 00:26   #5
ZORRO2005
Форумчанин
 
Аватар для ZORRO2005
 
Регистрация: 26.11.2006
Сообщений: 584
По умолчанию

tae1980,
Советую посмотреть Связанные выпадающие списки:
http://www.planetaexcel.ru/tip.php?aid=64
ZORRO2005 вне форума Ответить с цитированием
Старый 04.05.2009, 00:44   #6
tae1980
Форумчанин
 
Регистрация: 02.02.2009
Сообщений: 842
По умолчанию

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
Примеров куча на форуме. Но проблема не в этом.
Реализация ввода данных - мелочь по сравнению с выборкой данных для ввода...
А то..., с двух-трех уровневым вводом списков я бы справился теми средствами что уже знаю. Пока все выглядит сложнее чем обычно.

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
Это сейчас самое важное.
Если неправильно организовать хранение исходных данных (базу данных улиц и городов), то потом много времени придётся тратить на изменение (корректировку, пополнение) базы и реализацию выборки из неё нужных данных.
:) Не знаю как все, а я как правило трижды переписываю код, как бы тчательно не планировал его вначале. Все сразу не предусмотришь, да и первоначальная структура данных как правило всегда немного меняется. Поэтому первая версия кода у меня всегда в виде "набросков".

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
Файл я смотрел. Он почти пустой.
Надо знать общий объём данных.
Это все что есть. И других данных не будет, их просто взят не откуда. Основная информация будет вноситься в процессе работы, для этого планирую либо ручной ввод в книгу, либо разработку специальной формы/макросов.

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
К примеру, если всего 2 области, в каждой по 5 городов, а в городе по 10 улиц - то всё можно впихнуть в один лист Excel
А если 10 областей, в каждой по 50 городов, а в городе по 100 улиц - то решение должно быть совершенно другим...
ИМХО при грамотной структуре данных - их размер не имеет значения. Те цифры что указаны в файле, взяты из головы для пробы.
Я считаю что всегда нужно стараться убирать ограничения. Если бы писал на рексе, то убрал бы их вовсе. В экселе всегда ограничиваюсь размерами листа, и еще ни разу не выходил за эти пределы (не было нужды).

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
В каком виде сейчас хранятся все эти данные?
Положил последнюю версию файла. Так что как в файле...

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
Впрочем, нюансов множество. Если есть Скайп, позвоните завтра вечером - может, смогу что посоветовать.
"Скайп" это инет телефония? Не стоит, но поставить думаю не проблема. Большая проблема будет найти микрофон. :) Чем лучше пользоваться?
С уважением, Алексей.
tae1980 вне форума Ответить с цитированием
Старый 04.05.2009, 01:22   #7
tae1980
Форумчанин
 
Регистрация: 02.02.2009
Сообщений: 842
По умолчанию

Цитата:
Сообщение от ZORRO2005 Посмотреть сообщение
tae1980,
Советую посмотреть Связанные выпадающие списки:
http://www.planetaexcel.ru/tip.php?aid=64
Спасибо. Интересно. Попробую использовать, но уже с утра. :)
С уважением, Алексей.
tae1980 вне форума Ответить с цитированием
Старый 05.05.2009, 15:32   #8
Dastoff
Пользователь
 
Регистрация: 12.02.2009
Сообщений: 23
По умолчанию Помогите решить задачу

Есть два выпадающих списка, в зависимости от выбора которых (значения в этих 2 столбцах не зависят друг от друга) определяется значение в третьем столбце. Подскажите как можно сделать это. Пример приложил
Вложения
Тип файла: rar для примера.rar (3.6 Кб, 51 просмотров)
Dastoff вне форума Ответить с цитированием
Старый 05.05.2009, 16:41   #9
mchip
Форумчанин
 
Регистрация: 24.06.2008
Сообщений: 516
По умолчанию

Каковы критерии определения третьего столбца?
Можно сделать все! Было бы время, да деньги...
mchip вне форума Ответить с цитированием
Старый 05.05.2009, 17:25   #10
Dastoff
Пользователь
 
Регистрация: 12.02.2009
Сообщений: 23
По умолчанию Определение критериев

Цитата:
Сообщение от mchip Посмотреть сообщение
Каковы критерии определения третьего столбца?
На основе 2 предыдущих столбцов. В зависимости от соответствующих параметров из 2 столбцов необходимо вычислить третий столбец. То есть мне нужна формула которая бы решила эту задачу
Dastoff вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Зависимые списки. Tehcorp Microsoft Office Excel 0 04.02.2009 18:38
с++ списки Blizzz Общие вопросы C/C++ 3 04.12.2008 21:19
Зависимые ячейки и непонятные формулы) Лига Microsoft Office Excel 10 15.09.2008 10:21
Зависимые списки ASR Microsoft Office Excel 1 30.11.2007 13:46