Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Элементы из листбокс2 соответствуют элементам из листбокс1 - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, Manyasha, SLAVICK, китин  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Элементы из листбокс2 соответствуют элементам из листбокс1 (Макросы/Sub)
Элементы из листбокс2 соответствуют элементам из листбокс1
Asretyq Дата: Среда, 13.02.2019, 21:12 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 180
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Доброго времени суток
в файлике 2 листбокса, при инициализации формы должно в листбоксе 1 отображаться значения из ячейки А, а при выборе элементов в листбоксе1 должно отображаться элементы в листбоксе 2 из ячейки В, при этом должны выводиться те элементы, которые соответствуют из листбокса 1. С учетом игнорирования пустых ячеек
Например, при выборе дерево в листбоксе2 отображаются 3 элемента - дуб, осина, баобаб
получилось у меня сделать но очень криво и жрет много памяти для большого количества ячеек
есть может варианты безболезненно исполнить!
К сообщению приложен файл: 111.xlsm(20.9 Kb)


Сообщение отредактировал Asretyq - Среда, 13.02.2019, 21:16
 
Ответить
СообщениеДоброго времени суток
в файлике 2 листбокса, при инициализации формы должно в листбоксе 1 отображаться значения из ячейки А, а при выборе элементов в листбоксе1 должно отображаться элементы в листбоксе 2 из ячейки В, при этом должны выводиться те элементы, которые соответствуют из листбокса 1. С учетом игнорирования пустых ячеек
Например, при выборе дерево в листбоксе2 отображаются 3 элемента - дуб, осина, баобаб
получилось у меня сделать но очень криво и жрет много памяти для большого количества ячеек
есть может варианты безболезненно исполнить!

Автор - Asretyq
Дата добавления - 13.02.2019 в 21:12
vikttur Дата: Среда, 13.02.2019, 21:33 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2921
Репутация: 525 ±
Замечаний: 0% ±

получилось у меня сделать но очень криво

Не обнаружено такого...
 
Ответить
Сообщение
получилось у меня сделать но очень криво

Не обнаружено такого...

Автор - vikttur
Дата добавления - 13.02.2019 в 21:33
Asretyq Дата: Среда, 13.02.2019, 21:40 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 180
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
vikttur, не выставлял, не хочу вводить людей по неверному пути))
 
Ответить
Сообщениеvikttur, не выставлял, не хочу вводить людей по неверному пути))

Автор - Asretyq
Дата добавления - 13.02.2019 в 21:40
Asretyq Дата: Среда, 13.02.2019, 21:43 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 180
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
[vba]
Код
Private Sub ListBox1_Click()
ListBox2.Clear
For r = 2 To Cells(Rows.Count, 1).End(xlUp).Row
        If Cells(r, 1) = ListBox1.Text Then ListBox2.AddItem Cells(r, 1).Offset(0, 1)
    Next r
End Sub

Private Sub UserForm_Initialize()
    For r = 2 To Cells(Rows.Count, 1).End(xlUp).Row
        If Cells(r, 1) <> "" Then ListBox1.AddItem Cells(r, 1).Value
    Next r
End Sub
[/vba]


Сообщение отредактировал Asretyq - Среда, 13.02.2019, 21:47
 
Ответить
Сообщение[vba]
Код
Private Sub ListBox1_Click()
ListBox2.Clear
For r = 2 To Cells(Rows.Count, 1).End(xlUp).Row
        If Cells(r, 1) = ListBox1.Text Then ListBox2.AddItem Cells(r, 1).Offset(0, 1)
    Next r
End Sub

Private Sub UserForm_Initialize()
    For r = 2 To Cells(Rows.Count, 1).End(xlUp).Row
        If Cells(r, 1) <> "" Then ListBox1.AddItem Cells(r, 1).Value
    Next r
End Sub
[/vba]

Автор - Asretyq
Дата добавления - 13.02.2019 в 21:43
Asretyq Дата: Среда, 13.02.2019, 21:44 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 180
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
цикл не могу нормализовать при клике на листбокс1
 
Ответить
Сообщениецикл не могу нормализовать при клике на листбокс1

Автор - Asretyq
Дата добавления - 13.02.2019 в 21:44
Asretyq Дата: Среда, 13.02.2019, 22:22 | Сообщение № 6
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 180
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
в общем не могу допилить цикл
последний элемент зависает, так как обращается к последней строке
К сообщению приложен файл: 8034614.xlsm(22.8 Kb)


Сообщение отредактировал Asretyq - Среда, 13.02.2019, 22:48
 
Ответить
Сообщениев общем не могу допилить цикл
последний элемент зависает, так как обращается к последней строке

Автор - Asretyq
Дата добавления - 13.02.2019 в 22:22
doober Дата: Среда, 13.02.2019, 23:26 | Сообщение № 7
Группа: Друзья
Ранг: Ветеран
Сообщений: 547
Репутация: 236 ±
Замечаний: 0% ±

Excel 2007
последний элемент зависает

Реально в даун входит.
А так?


 
Ответить
Сообщение
последний элемент зависает

Реально в даун входит.
А так?

Автор - doober
Дата добавления - 13.02.2019 в 23:26
Asretyq Дата: Четверг, 14.02.2019, 22:23 | Сообщение № 8
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 180
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
doober, неа))) тоже последний элемент я листбоксе1 выводит только 1 элемент) до этого я дошел))
 
Ответить
Сообщениеdoober, неа))) тоже последний элемент я листбоксе1 выводит только 1 элемент) до этого я дошел))

Автор - Asretyq
Дата добавления - 14.02.2019 в 22:23
doober Дата: Четверг, 14.02.2019, 22:28 | Сообщение № 9
Группа: Друзья
Ранг: Ветеран
Сообщений: 547
Репутация: 236 ±
Замечаний: 0% ±

Excel 2007
Да, упустил этот момент
надо заменить строку[vba]
Код
dx = Range("A2:B" & Cells(Rows.Count, 1).End(xlUp).Row)
' на
dx = Range("A2:B" & Cells(Rows.Count, 2).End(xlUp).Row)
[/vba]


 
Ответить
СообщениеДа, упустил этот момент
надо заменить строку[vba]
Код
dx = Range("A2:B" & Cells(Rows.Count, 1).End(xlUp).Row)
' на
dx = Range("A2:B" & Cells(Rows.Count, 2).End(xlUp).Row)
[/vba]

Автор - doober
Дата добавления - 14.02.2019 в 22:28
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Элементы из листбокс2 соответствуют элементам из листбокс1 (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс цитирования
© 2010-2019 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!