powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Вывести в ListBox значения из словаря
18 сообщений из 18, страница 1 из 1
Вывести в ListBox значения из словаря
    #38301731
Takayavot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!
Нашла на просторах инета примерно такой код
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
Sub sdf()

   Dim vItem
   Dim dict As Object
   Dim Arr()
   
  Set dict = CreateObject("Scripting.Dictionary")
  With dict
  
      For Each vItem In Range("A1", Cells(Rows.Count, 1).End(xlUp)).Value
         If Trim(vItem) = "" Then
         .Item(Trim(vItem)) = .Item(Trim(vItem)) + 1
         End If
         
      Next
      If .Count Then [E2].Resize(.Count).Value = Application.WorksheetFunction.Transpose(.Keys)
      If .Count Then [F2].Resize(.Count).Value = Application.WorksheetFunction.Transpose(.Items)
   End With

End Sub




Признаться честно не до конца его понимаю, но вроде как он должен записывать в словарь список неуникальных значений из столбца A1.

Вопрос вот в чем. Как мне ввести этот список в Listbox.list?

Спасибо!
...
Рейтинг: 0 / 0
Вывести в ListBox значения из словаря
    #38301734
Takayavot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Тьфу - уникальных, разумеется..
...
Рейтинг: 0 / 0
Вывести в ListBox значения из словаря
    #38301747
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В VBA Scripting.Dictionary не нужен, те же функции выполняет Collection:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Dim col As New Collection
On Error Resume Next 'при вводе неуникального значения генерируется ошибка, игнорируем ее
For Each vItem In Range("A1", Cells(Rows.Count, 1).End(xlUp)).Value
    col.Add vItem, vItem
Next

On Error Goto 0

For Each vItem In col
    Debug.Print vItem
Next
...
Рейтинг: 0 / 0
Вывести в ListBox значения из словаря
    #38301764
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Takayavot Вопрос вот в чем. Как мне ввести этот список в Listbox.list? ListBox.AddItem
...
Рейтинг: 0 / 0
Вывести в ListBox значения из словаря
    #38301786
Takayavot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AntonariyВ VBA Scripting.Dictionary не нужен, те же функции выполняет Collection:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Dim col As New Collection
On Error Resume Next 'при вводе неуникального значения генерируется ошибка, игнорируем ее
For Each vItem In Range("A1", Cells(Rows.Count, 1).End(xlUp)).Value
    col.Add vItem, vItem
Next

On Error Goto 0

For Each vItem In col
    Debug.Print vItem
Next



Спасибо..но вопрос про присваивание все равно открыт..
я понимаю как делать присваивание перебором через массив нечто типа Listbox1.additem cells(i,1)
А вот через свойство List объекта Listbox можно как-то список из словаря целиком присвоить?
Listbox.list = Col...какой там синтаксис должен быть?
...
Рейтинг: 0 / 0
Вывести в ListBox значения из словаря
    #38301792
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если списком , то юзай dblist32.ocx
...
Рейтинг: 0 / 0
Вывести в ListBox значения из словаря
    #38301840
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Dim col As New Collection
On Error Resume Next 'при вводе неуникального значения генерируется ошибка, игнорируем ее
For Each vItem In Range("A1", Cells(Rows.Count, 1).End(xlUp)).Value
    col.Add vItem, vItem
Next

On Error Goto 0

For Each vItem In col
    ListBox1.AddItem vItem
Next
...
Рейтинг: 0 / 0
Вывести в ListBox значения из словаря
    #38301867
Takayavot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Antonariy
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Dim col As New Collection
On Error Resume Next 'при вводе неуникального значения генерируется ошибка, игнорируем ее
For Each vItem In Range("A1", Cells(Rows.Count, 1).End(xlUp)).Value
    col.Add vItem, vItem
Next

On Error Goto 0

For Each vItem In col
    ListBox1.AddItem vItem
Next



Да, спасибо, я тоже так уже попробовала.
Только вот ругается, что не находит объект. Объект Listbox1 на листе существует.
Не могу понять в чем дело..
...
Рейтинг: 0 / 0
Вывести в ListBox значения из словаря
    #38301899
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сколько попыток даёте на угадывание, где ругается?
...
Рейтинг: 0 / 0
Вывести в ListBox значения из словаря
    #38301906
Takayavot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AntonariyСколько попыток даёте на угадывание, где ругается?

Столько, сколько потребуется )
на строке ListBox1.AddItem vItem
...
Рейтинг: 0 / 0
Вывести в ListBox значения из словаря
    #38301934
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторОбъект Listbox1 на листе существует.А код где расположен?
...
Рейтинг: 0 / 0
Вывести в ListBox значения из словаря
    #38301951
Takayavot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AntonariyА код где расположен?
в модуле текущей книги
...
Рейтинг: 0 / 0
Вывести в ListBox значения из словаря
    #38301958
Takayavot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Даже если сделать простейший макрос
Код: vbnet
1.
2.
3.
4.
5.
Sub Макрос8()
k = "dfg"
Listbox.AddItem k

End Sub


то выходит та же ошибка
Я создаю книгу с нуля, создаю через панель форм форму (причем пробую разные : activex и обычные) и...увы..
...
Рейтинг: 0 / 0
Вывести в ListBox значения из словаря
    #38301961
Takayavot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
[quot Takayavot]

Код: vbnet
1.
2.
3.
4.
5.
Sub Макрос8()
k = "dfg"
Listbox1.AddItem k

End Sub
...
Рейтинг: 0 / 0
Вывести в ListBox значения из словаря
    #38301978
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TakayavotAntonariyА код где расположен?
в модуле текущей книгиА должен быть в листе, иначе нужно писать Worksheets(номер).ListBox1
...
Рейтинг: 0 / 0
Вывести в ListBox значения из словаря
    #38302016
Takayavot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AntonariyА должен быть в листе, иначе нужно писать Worksheets(номер).ListBox1
о! С первой попытки )
Спасибо вам пребольшое!
...
Рейтинг: 0 / 0
Вывести в ListBox значения из словаря
    #38302025
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если бы с первой попытки был приложен образец файла, то помочь можно было бы гораздо быстрее
...
Рейтинг: 0 / 0
Вывести в ListBox значения из словаря
    #38302039
Takayavot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.ProЕсли бы с первой попытки был приложен образец файла, то помочь можно было бы гораздо быстрее
на будущее заимею в виду )
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Вывести в ListBox значения из словаря
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]