powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / выбрать данные из соседней ячейки
8 сообщений из 8, страница 1 из 1
выбрать данные из соседней ячейки
    #38163156
bombimbom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На листе2 есть список стран столбец А и их ID столбец B
вот код который выбирает данные из А и переносит в combobox

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
Dim AllCells As Range, rCell As Range
Dim NoDupes As New Collection

        Set AllCells = .Range("A1:A" & .Cells(Rows.Count, 1).End(xlUp).Row)
    End With

    On Error Resume Next
    For Each rCell In AllCells
        NoDupes.Add rCell.Value, CStr(rCell.Value)
    Next rCell
    On Error GoTo 0
    For Each Item In NoDupes
        UserForm1.country.AddItem Item
    Next Item

-- далее таким способом я вставляю выбранное значение из списка combobox
ActiveCell.Offset(0, 10).Value = Me.country.Value



Проблема в том что мне нужно вставить данные ID выбранной страны...
Подскажите пожалуйста как это сделать?
Модератор: я ведь уже просил вас научиться пользоваться оформлением кода. Будьте так любезны
...
Рейтинг: 0 / 0
выбрать данные из соседней ячейки
    #38163224
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поменять столбцы A и B местами можно (хотя это непринципиально)?
Создавать комбобокс Country нужно именно из коллекции NoDupes , по-другому нельзя (тоже не особо принципиально, но всё же)?
Коллекция NoDupes используется ещё где-то для чего-то?
...
Рейтинг: 0 / 0
выбрать данные из соседней ячейки
    #38163244
bombimbom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AndreTM,

да поменять можно
не используется, только тут
...
Рейтинг: 0 / 0
выбрать данные из соседней ячейки
    #38163263
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда сделайте проще.
Во-первых, не заполняйте комбо добавлением пунктов, а просто укажите укажите в качестве источника нужный диапазон ячеек листа (.RowSource="Лист2!A:B")
Во-вторых, сделайте комбо двухколоночным (.ColumnsCount=2), включающим и ID, и название. И при этом настройте колонки так, чтобы отображалось только название (.ColumnWidths="100 pt;0 pt"), а в качестве возвращаемого значения брались данные второго столбца (.BoundColumn=2).
...
Рейтинг: 0 / 0
выбрать данные из соседней ячейки
    #38163274
bombimbom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AndreTM,
спасибо большое, получилось.. но вот 1 проблема теперь раньше делалась проверка

If Me.country.Value = Empty Then
MsgBox "Введите страну", vbExclamation
Me.profession.SetFocus
Exit Sub
End If

а теперь пропускает
...
Рейтинг: 0 / 0
выбрать данные из соседней ячейки
    #38163276
bombimbom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
bombimbom,

ошибся там не profes а country
...
Рейтинг: 0 / 0
выбрать данные из соседней ячейки
    #38163283
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Либо перед интерактивом формы с комбобоксом выставляйте некоторое дефолтное значение, либо проверяйте не Country.Value, а Country.ListIndex (=-1 - не выбран элемент)
...
Рейтинг: 0 / 0
выбрать данные из соседней ячейки
    #38163288
bombimbom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AndreTM,

Спасибо большое! проблему решил, продолжаю дальше изучать макросы :)
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / выбрать данные из соседней ячейки
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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