Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / VBA. Выпадающий список значений для ячеек / 4 сообщений из 4, страница 1 из 1
30.01.2012, 10:04
    #37637723
TёMochkiN
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBA. Выпадающий список значений для ячеек
Доброго времени суток :)
вообщем есть таблица из двух столбцов код-значения. Как можно сделать так, чтобы в выпадающем списке были значения, а в ячейку заносились коды. Возможно ли такое? или что-нибудь аналогичное может есть?
с помощью Validation я пробовал, но он позволяет вводить только сам список доступных для ввода значений, как я понял. А чтоб сделать так как мне предпочтительней не получается? подскажите в какую сторону копать, про какие функции/операторы почитать?
...
Рейтинг: 0 / 0
30.01.2012, 10:35
    #37637780
vikttur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBA. Выпадающий список значений для ячеек
Если формулой:
Код: xml
1.
=ИНДЕКС(1столбец;ПОИСКПОЗ(из_списка;2столбец;0))
...
Рейтинг: 0 / 0
30.01.2012, 10:49
    #37637803
TёMochkiN
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBA. Выпадающий список значений для ячеек
vikttur, так ведь ИНДЕКС возвращает значение или ссылку на значение из таблицы или диапазона, а мне нужен ещё выпадающий список этого диапазона значений, т.е в выпадающем списке для ячейки "1, 2, 3, 4, 5", а в ячейку заносятся "а, б, в, г, д" для примера.
...
Рейтинг: 0 / 0
30.01.2012, 11:41
    #37637885
TёMochkiN
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VBA. Выпадающий список значений для ячеек
Ой, извините меня вообщем за этот глупый вопрос, я нашел решение. Если надо кому, вот примерчик:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
'Модуль книги
Private Sub Workbook_Open()
    With Worksheets("List1").[A1].Validation
        .Delete
        .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:="=СписокЗначений"
    End With
End Sub


Код: vbnet
1.
2.
3.
4.
5.
6.
'Модуль листа
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, [A1]) Is Nothing Then
        Target.Value = WorksheetFunction.VLookup(Target.Value, Worksheets("List1").[B1:C5], 2)
    End If
End Sub



Макросу ведь ничего не мешает внести какое угодно значение в ячейку с заданным интерфейсом Validation, это только для пользователя действует ограничение вводимых данных.
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / VBA. Выпадающий список значений для ячеек / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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