Как автоматически выбрать значение из выпадающего списка? - PullRequest
0 голосов
/ 30 марта 2019

Итак, у меня есть два листа - SheetA и SheetB.

Лист B содержит раскрывающийся список [Option1 / 2/3] и другую ячейку, которая меняет свое значение в зависимости от того, какая опция выбрана из раскрывающегося списка.

В SheetA я хотел бы перечислить все опции - 1,2,3 и их соответствующие значения, указанные в SheetB.

<Sheet B>

Drop-down List Options       CellX
======================       ======
Option 1/2/3                 10/20/30 (depending on the option chosen) 
<Sheet A>

Options     Value
========    ======
1           10
2           20
3           30 

Мой мыслительный процесс: Если SheetA! Options = 1, Value = SheetB! CellX Если SheetA! Options = 2, Value = SheetB! CellX

Можно ли как-нибудь автоматически выбрать значения в раскрывающемся списке и вернуть значения в SheetA?

1 Ответ

0 голосов
/ 30 марта 2019

есть ...

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

в VBA Editor, выберите свой SheetA из дерева проекта и добавьте следующий код:

Option Explicit 
Private Sub Worksheet_Change(ByVal Target As Range)

If ThisWorkbook.Sheets("SheetA").Range("A2") = 1 Then

    ThisWorkbook.Sheets("SheetA").Range("B2") = ThisWorkbook.Sheets("SheetB").Range("B2")

ElseIf ThisWorkbook.Sheets("SheetA").Range("A2") = 2 Then

    ThisWorkbook.Sheets("SheetA").Range("B2") = ThisWorkbook.Sheets("SheetB").Range("B3")

ElseIf ThisWorkbook.Sheets("SheetA").Range("A2") = 3 Then

    ThisWorkbook.Sheets("SheetA").Range("B2") = ThisWorkbook.Sheets("SheetB").Range("B4")

End If
End If

End Sub

хотя ... вы можете просто использовать формулу, подобную этой, в столбце значений на SheetA:

=INDEX(SheetB!B2:B4,MATCH(A2,SheetB!A2:A4,0))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...