用于文本框值的Excel VBA代码依赖于使用命名范围的下拉列表值

我拥有的:

  1. 我在Excel VBA中有一个自定义用户表单。
  2. 该表格包含一个下拉列表( 行业类别 )和文本框(相应的行业说明 )。
  3. 对于每个行业类别,都有一个行业说明符 (类别的首字母缩略词)。
  4. 行业类别行业指定者将永远在同一行。
  5. 下拉列表从单元格的名称范围填充。

我需要的:

文本框的值需要依赖于下拉列表的值。

例如,当select一个行业类别时 ,相应的行业代码应该出现在文本框中。

我的细胞结构:

A栏( 行业分类 ):

Agriculture Art and photography Arts and theatre Charity and non-profit Corporate Educational and academic 

B栏( 行业说明 ):

 ag ap at cn co ea 

我的VBA代码:

填充行业类别的下拉列表:

 'Populate Industry combo box. Dim range_c As Range Dim ws_c As Worksheet Set ws_c = Worksheets("4.1 List data") For Each range_c In ws_c.Range("IndustryList") With Me.Industry .AddItem range_c.Value .List(.ListCount - 1, 1) = range_c.Offset(0, 1).Value End With Next range_c 

行业指定者的文本框:

 IndustrySpecifier.Value = "" 

我试过了:

我已经回顾了如何使用VBA代码来实现我所需要的教程,但我不知道从哪里开始使用依赖的命名范围

你需要这样的东西:

 Private Sub UserForm_Initialize() Dim range_c As Range For Each range_c In Worksheets("4.1 List data").Range("IndustryList") With Me.Industry .AddItem range_c.Value .List(.ListCount - 1, 1) = range_c.Offset(0, 1).Value End With Next range_c End Sub Private Sub Industry_Change() With Me.Industry If .ListIndex = -1 Then IndustrySpecifier.Text = "" Else IndustrySpecifier.Text = .List(.ListIndex, 1) End If End With End Sub 

在这里输入图像说明