|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
21.10.2009, 10:55 | #1 |
Форумчанин
Регистрация: 27.05.2009
Сообщений: 170
|
выбор даты
Здравствуйте! Прошу помощи в решении такой проблемы. В одной из закрытых тем нашел пример использования ComboBox, где при помощи VBA в данных которые загружаются, убираются дубликаты, и происходит сортировка. А вот если в диапазон вместо чисел поставить дату, тогда это все работает немножко неправильно.
1. Дата показывается в формате ММ/ДД/ГГГГ, а хотелось бы ДД.ММ.ГГГГ. 2. Ну и естественно чтобы после нажатия ComboBox показывал дату в том же формате ДД.ММ.ГГГГ |
21.10.2009, 20:28 | #2 |
Пользователь
Регистрация: 12.03.2009
Сообщений: 19
|
Замените часть кода:
'Добавление уникальных значений в ListBox и ComboBox For Each Item In NoDupes UserForm1.ComboBox1.AddItem Format(Item, "dd.mm.yy") Next Item Обратите внимание на функцию Format() |
21.10.2009, 20:55 | #3 |
Форумчанин
Регистрация: 27.05.2009
Сообщений: 170
|
СПАСИБО VovaKl, Вы меня выручили!!!
|
22.10.2009, 15:58 | #5 |
Форумчанин
Регистрация: 27.05.2009
Сообщений: 170
|
Если можно подскажите еще такое, как в в этом же ComboBox-e добавить перед списком дат пустую строчку, чтоб при необходимости можно было выбирать пустое значение, после того как уже что то выбирали?
|
22.10.2009, 17:46 | #6 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Здравствуйте Screame.
добавить пустую строку можно с помощью кода :ComboBox1.AddItem Empty читать, сортировать и отбирать только уникальные значения данных листа, можно с применением библиотеки ADO, такой способ не требует создания дополнительных объектов для промежуточного заполнения и сортировки. Евгений. |
22.10.2009, 17:47 | #7 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Образец применения
|
23.10.2009, 09:37 | #8 |
Форумчанин
Регистрация: 27.05.2009
Сообщений: 170
|
посмотрите мой пример, в диапазоне убрал несколько первых значений в ComboBox и ListBox появляются две пустых строки вместо одной. Можно ли убрать одну лишнюю?
|
23.10.2009, 13:18 | #9 |
Пользователь
Регистрация: 12.03.2009
Сообщений: 19
|
Диапазон уже содержит пустую строку, "D2:D12" - пустые, Вы затем добавляете еще одну пустую строку UserForm1.ComboBox1.AddItem Empty. Два варианта - или исходный диапазон не должен содержать пустых строк - или залочьте эту строку апострофом.
|
23.10.2009, 19:30 | #10 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Здравствуйте Screame.
"Два варианта" которые предложил VovaKl вполне могут быть дополнены ещё одним - проверяйте данные считываемые из диапазона при построении списка: If Len(rs(0) & "") > 0 Then ListBox1.AddItem rs(0) & "" Евгений. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Даты | Sparky | БД в Delphi | 6 | 02.10.2009 09:48 |
Выбор даты в StringGrid | artemavd | Общие вопросы Delphi | 2 | 31.07.2009 15:15 |
Выбор Даты/Времени из БД при помощи DateTimePicker | rainbow | Общие вопросы Delphi | 3 | 08.10.2008 12:42 |
Выбор необходимой даты | samurayka | Помощь студентам | 1 | 20.04.2008 13:50 |
Даты не даты | Nasya | Microsoft Office Excel | 3 | 22.08.2007 20:18 |