powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Можно ли в VBA создать множество.
10 сообщений из 10, страница 1 из 1
Можно ли в VBA создать множество.
    #32681331
fm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
fm
Гость
Можно ли в VBA создать множество, и как с ним потом работать (например, проверять, находится ли значение переменной в этом множестве)?
Хотя бы скажите, по какому слову в хелпе искать..
Помогите пожалуйста!
...
Рейтинг: 0 / 0
Можно ли в VBA создать множество.
    #32681342
Дурак
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Collection...

Ну и кое-что дописать :-)...

В чистом виде - нет... ИМХО...
...
Рейтинг: 0 / 0
Можно ли в VBA создать множество.
    #32681349
Hibernate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
наиболее близко - Collection.
как проверять? зависит от того как ты будешь наполнять эту коллекцию. Если у тебя ключ будет 100% зависеть от знеачения, то попытка добавить элемент с дублирующимся ключем выдаст ошибку, или как вариант обратный способ - попытка получить элемент с заданным ключом сгенерирует ошибку...
...
Рейтинг: 0 / 0
Можно ли в VBA создать множество.
    #32681604
fm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
fm
Гость
Понятно... А я могу отлавливать появление ошибки дабы прога не тормозилась, а вместо этого получать логич. значение?
...
Рейтинг: 0 / 0
Можно ли в VBA создать множество.
    #32681796
Hibernate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fmПонятно... А я могу отлавливать появление ошибки дабы прога не тормозилась, а вместо этого получать логич. значение?
да можешь. Примерно так:

On error Resume Next
'тут код, вызывающий ошибку
If err.Number = нужная_ошибка Then
нужная нам ошибка - обрабатываем
Else
err.Raise err.Number, err.Source, err.Description, err.HelpFile, err.HelpContext
Exit '(Sub|Function|Property) - нужное выбрать
End If
...
Рейтинг: 0 / 0
Можно ли в VBA создать множество.
    #32681818
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А словарь (dictionary) не лучше ?
в плане exists и т.д.
...
Рейтинг: 0 / 0
Можно ли в VBA создать множество.
    #32681866
fm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
fm
Гость
Спасибки за помощь в работе с ошибкой. А dictionary я попробовал, взял сначала пример из хелпа
Dim d 'Create a variable
Set d = CreateObject(Scripting.Dictionary)
и т.д.
а машина мне рассказывает, что object required :((
...
Рейтинг: 0 / 0
Можно ли в VBA создать множество.
    #32681934
Дурак
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
К словарю нужна отдельная Dll - ка, момимо "главной Бейсиковской"...
Или я ошибаюсь?
...
Рейтинг: 0 / 0
Можно ли в VBA создать множество.
    #32682078
Hibernate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДуракК словарю нужна отдельная Dll - ка, момимо "главной Бейсиковской"...
Или я ошибаюсь?

Насколько я знаю Microsoft Scriptinng - стандартная библиотека.
(к стати там ошибка - надо писать CreateObject("Scripting.Dictionary")
при таком объявлении, она должна быть просто зарегистрирована в системе, в самом VB не надо ничего трогать.
Хотя гораздо удобнее программить, если в References выставить ссылку на Microsoft Scriptinng и пользоваться таким вариантом:

Dim d As Scripting.Dictionary
Set d = New Scripting.Dictionary

у меня чудно работает.
сспасибо big-duke за полезный совет. :-)
...
Рейтинг: 0 / 0
Можно ли в VBA создать множество.
    #32682099
fm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
fm
Гость
Спасибо огромное! Dictionary заработал, а это действительно то, что нужно :)
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Можно ли в VBA создать множество.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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