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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 30.10.2007, 01:45   #1
vadzik
 
Регистрация: 30.10.2007
Сообщений: 8
По умолчанию Неактивные листбоксы

Люди,
помогите исправить файлик (приаттачен).... уже всю голову сломал

В сей форме CheckBoxes открывают новые боксы. Первые несколько работают замечательно, после двух-трех кликов - листбоксы перестают быть активными. То есть кликаю по ним сколько угодно, а они не работают.

Странно, но спасает в этом случае переход на соседний Лист (Options) и обратно - тогда опять боксы включаются.

Спасибо.
Вложения
Тип файла: zip va.zip (89.0 Кб, 11 просмотров)
vadzik вне форума
Старый 30.10.2007, 21:23   #2
pashulka
Форумчанин
 
Регистрация: 03.11.2006
Сообщений: 524
По умолчанию

XL97 - вышеописанных проблем не наблюдается.
pashulka вне форума
Старый 30.10.2007, 22:15   #3
vadzik
 
Регистрация: 30.10.2007
Сообщений: 8
По умолчанию

Пардон, слишком много обрезал. Высылаю оригинал.
Вложения
Тип файла: zip va1.zip (101.1 Кб, 11 просмотров)
vadzik вне форума
Старый 30.10.2007, 22:44   #4
pashulka
Форумчанин
 
Регистрация: 03.11.2006
Сообщений: 524
По умолчанию

Код:
Private Sub CheckBox_CC_Click()
    AddButtonCC.Visible = CheckBox_CC.Value
    DeleteButtonCC.Visible = CheckBox_CC.Value
    ListBox_CC.Enabled = CheckBox_CC.Value
    ListBox_CC2.Visible = CheckBox_CC.Value
End Sub
pashulka вне форума
Старый 30.10.2007, 22:49   #5
vadzik
 
Регистрация: 30.10.2007
Сообщений: 8
По умолчанию

Так лучше, но к сожалению не помогло.
vadzik вне форума
Старый 31.10.2007, 22:16   #6
pashulka
Форумчанин
 
Регистрация: 03.11.2006
Сообщений: 524
По умолчанию

Если Вы вообще не хотите блокировать свои списки, то уберите инструкции, в которых используется свойство Enabled.
pashulka вне форума
Старый 02.11.2007, 18:29   #7
vadzik
 
Регистрация: 30.10.2007
Сообщений: 8
По умолчанию

Спасибо всем. Наводящие советы очень помогли.
Форма работает замечательно.
Помогите теперь, как красивее сохранить данные при выходе?
(Если войти и выйти данные обнуляются).

прикрепил исправленный файлик ниже.
Вложения
Тип файла: zip vadim2.zip (121.4 Кб, 26 просмотров)
vadzik вне форума
Старый 05.11.2007, 20:59   #8
pashulka
Форумчанин
 
Регистрация: 03.11.2006
Сообщений: 524
По умолчанию

Если под фривольным термином войти и выйти Вы подразумеваете закрытие и повторное открытие рабочей книги, то ситуация с исчезновением данных вполне нормальна. Но если такой расклад Вас не устраивает, то можно либо воспользоваться родными элементами управления : Вид-Панели инструментов-Формы (правда, в отличии от ActiveX, эти элементы отличаются крайней скупостью на предмет наличия изменяемых свойств) либо, например, при закрытии книги сохранять значения всех элементов списка, где-нибудь в ячейках рабочего листа (возможно скрытого), а при открытии этой книги заполнять нужный список сохранёнными значениями.
pashulka вне форума
Старый 05.11.2007, 21:59   #9
vadzik
 
Регистрация: 30.10.2007
Сообщений: 8
По умолчанию

Дело двинулось!

добавил лист storage

сохраняю так:

Private Sub AddButtonGML_Click()
Dim v&, w&
For v = 0 To Me.ListBoxGML.ListCount - 1
If Me.ListBoxGML.Selected(v) Then
Worksheets("storage").Cells(w + 1, 1) = Me.ListBoxGML.List(v)
w = w + 1
End If
Next v
End Sub

в свойствах второго листбокса прописал listfillrange. Данные замечательно показываются и сохраняются во втором листбоксе!

еперь делаю удаление

Private Sub DeleteButtonGML_Click()
Dim v1&, w1&
For v1 = 0 To Me.ListBoxGMLX.ListCount - 1
If Me.ListBoxGMLX.Selected(v1) Then
Worksheets("storage").Cells(w1 + 1, 1).Delete
w1 = w1 + 1
End If
Next v1
End Sub

Проблема, что при удалении ячеек автоматически сдвигается свойство listfillrange.

Помогите, как его можно закрепить?
vadzik вне форума
Старый 06.11.2007, 00:13   #10
pashulka
Форумчанин
 
Регистрация: 03.11.2006
Сообщений: 524
По умолчанию

Я предлагал всего один раз, перед закрытием книги, сохранить нужные данные и один раз, после открытия книги, заполнить нужный список (см. пример)
pashulka вне форума
Закрытая тема


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