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

Вход

Регистрация

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

 

= Мир MS Excel/из listbox выбрать элемент и занести его в ячейку - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » из listbox выбрать элемент и занести его в ячейку (Макросы/Sub)
из listbox выбрать элемент и занести его в ячейку
lopuxi Дата: Вторник, 02.06.2015, 15:24 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 142
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007, 2013
Добрый день программисты.

Как мне проделать, довольно простую манипуляцию, из ListBox1 выделить один или несколько элементов и занести их в ячейки?

Спасибо


О_о ...и так можно было?
 
Ответить
СообщениеДобрый день программисты.

Как мне проделать, довольно простую манипуляцию, из ListBox1 выделить один или несколько элементов и занести их в ячейки?

Спасибо

Автор - lopuxi
Дата добавления - 02.06.2015 в 15:24
wild_pig Дата: Вторник, 02.06.2015, 15:44 | Сообщение № 2
Группа: Проверенные
Ранг: Обитатель
Сообщений: 517
Репутация: 97 ±
Замечаний: 0% ±

2003, 2013
Цитата
выделить один или несколько элементов

это разные вещи.
если просто листбокс то
[vba]
Код
Cells(1, 1) = Listbox1
[/vba]
если листбокс с мультивыбором то надо циклом пройтись по всем элементам списка


Сообщение отредактировал wild_pig - Вторник, 02.06.2015, 15:46
 
Ответить
Сообщение
Цитата
выделить один или несколько элементов

это разные вещи.
если просто листбокс то
[vba]
Код
Cells(1, 1) = Listbox1
[/vba]
если листбокс с мультивыбором то надо циклом пройтись по всем элементам списка

Автор - wild_pig
Дата добавления - 02.06.2015 в 15:44
lopuxi Дата: Вторник, 02.06.2015, 16:52 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 142
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007, 2013
Да, как вот несколько элементов выбрать?
Как правильно использовать ListBox1.MultiSelect?

У меня выбор остается None, я могу выбрать лишь один элемент...

Я прикреплю код. У меня уже в других операциях заполняется listbox1 и потом я должен выбрать в нем нужные мне элементы и по нажатию кнопки, они будут добавлять к списку.
Мне вот нужно
1. Это сделать MultiSelect
2. Получить числовое значение(кол-во) выбранных элементов

[vba]
Код

Private Sub Button_1_Click()
Dim cell, N As Integer

N = 0
While MP.Cells(N + 11, 4).Value <> ""
     N = N + 1
Wend
If MP.Cells(N + 10, 4).Value = "Добавить (+)" Then
N = N - 1
MsgBox N
End If

Cells(N + 11, 1).EntireRow.Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
MP.Cells(N + 11, 1).Value = N + 1

'For y = 0 To ListBox1.ListCount
'MsgBox y
'yArray(i) = ListBox1.List(y)
'Next
ListBox1.MultiSelect
MP.Cells(N + 11, 4) = ListBox1.Text

End Sub
[/vba]


О_о ...и так можно было?
 
Ответить
СообщениеДа, как вот несколько элементов выбрать?
Как правильно использовать ListBox1.MultiSelect?

У меня выбор остается None, я могу выбрать лишь один элемент...

Я прикреплю код. У меня уже в других операциях заполняется listbox1 и потом я должен выбрать в нем нужные мне элементы и по нажатию кнопки, они будут добавлять к списку.
Мне вот нужно
1. Это сделать MultiSelect
2. Получить числовое значение(кол-во) выбранных элементов

[vba]
Код

Private Sub Button_1_Click()
Dim cell, N As Integer

N = 0
While MP.Cells(N + 11, 4).Value <> ""
     N = N + 1
Wend
If MP.Cells(N + 10, 4).Value = "Добавить (+)" Then
N = N - 1
MsgBox N
End If

Cells(N + 11, 1).EntireRow.Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
MP.Cells(N + 11, 1).Value = N + 1

'For y = 0 To ListBox1.ListCount
'MsgBox y
'yArray(i) = ListBox1.List(y)
'Next
ListBox1.MultiSelect
MP.Cells(N + 11, 4) = ListBox1.Text

End Sub
[/vba]

Автор - lopuxi
Дата добавления - 02.06.2015 в 16:52
wild_pig Дата: Вторник, 02.06.2015, 17:40 | Сообщение № 4
Группа: Проверенные
Ранг: Обитатель
Сообщений: 517
Репутация: 97 ±
Замечаний: 0% ±

2003, 2013
В свойствах элемента выбрать из списка 1-fmMultiSelectMulti
либо при загрузке формы прописать лекарство
[vba]
Код
ListBox1.MultiSelect = 1
[/vba]
на форме листбокс и кнопка, код на кнопку
[vba]
Код
Dim i&, x&
     With ListBox1
         For i = 0 To .ListCount - 1
             If .Selected(i) Then
                 x = x + 1
             End If
         Next
     End With
     MsgBox x
[/vba]
 
Ответить
СообщениеВ свойствах элемента выбрать из списка 1-fmMultiSelectMulti
либо при загрузке формы прописать лекарство
[vba]
Код
ListBox1.MultiSelect = 1
[/vba]
на форме листбокс и кнопка, код на кнопку
[vba]
Код
Dim i&, x&
     With ListBox1
         For i = 0 To .ListCount - 1
             If .Selected(i) Then
                 x = x + 1
             End If
         Next
     End With
     MsgBox x
[/vba]

Автор - wild_pig
Дата добавления - 02.06.2015 в 17:40
lopuxi Дата: Вторник, 02.06.2015, 17:41 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 142
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007, 2013
У меня получилось! ))


О_о ...и так можно было?
 
Ответить
СообщениеУ меня получилось! ))

Автор - lopuxi
Дата добавления - 02.06.2015 в 17:41
lopuxi Дата: Вторник, 02.06.2015, 18:10 | Сообщение № 6
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 142
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007, 2013
Маленький вопрос )
почему ты добавляешь этот символ &?

[vba]
Код
Dim i&, x&
[/vba]

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


О_о ...и так можно было?
 
Ответить
СообщениеМаленький вопрос )
почему ты добавляешь этот символ &?

[vba]
Код
Dim i&, x&
[/vba]

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

Автор - lopuxi
Дата добавления - 02.06.2015 в 18:10
lopuxi Дата: Среда, 03.06.2015, 10:58 | Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 142
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007, 2013
Спасибо :-) не знал


О_о ...и так можно было?
 
Ответить
СообщениеСпасибо :-) не знал

Автор - lopuxi
Дата добавления - 03.06.2015 в 10:58
KSV Дата: Среда, 03.06.2015, 13:53 | Сообщение № 8
Группа: Друзья
Ранг: Ветеран
Сообщений: 770
Репутация: 255 ±
Замечаний: 0% ±

Excel 2013
^ - тип данных LongLong (в VBA7) забыли :)


KSV.VBA@gmail.com
Яндекс.Деньги: 410011921213333
 
Ответить
Сообщение^ - тип данных LongLong (в VBA7) забыли :)

Автор - KSV
Дата добавления - 03.06.2015 в 13:53
Мир MS Excel » Вопросы и решения » Вопросы по VBA » из listbox выбрать элемент и занести его в ячейку (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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