VBA 表单,组合框中的选择应在文本框中查看描述

问题描述 投票:0回答:1

我有一个组合框工作表,其中有一些数据可以通过动态名称范围填充组合框,但我坚持使用文本框来获取前面单元格中的值,不知道要使用什么,偏移量或索引和匹配,可以有人帮我解决这个问题吗?

所以我有那个表单,并且有一个由名为组合框的工作表填充的组合框_汽车。 然后,当我在组合框中进行选择时,我可以使用 textbox_power 来获取偏移值 所以基本上文本框必须只在组合框中显示所选汽车的马力。 我不知道如何通过偏移量或索引 n 匹配来到达?

如果有人可以帮助我解决这个偏移或索引问题以获得汽车的马力,我将非常感激。

我将添加屏幕以正确理解 该工作表是组合框。 带有组合框和文本框的用户窗体。 以及我可以用来填充组合框的 Vb 代码。 谢谢!!

这是表格组合框

Cars    power
BMW     550hp
Benz    400hp
Cupra   300hp
Seat    250hp
VW      450hp

我用汽车名称填充了组合框 但在选择时,我希望汽车的相关功率应显示在文本框中。

excel vba forms combobox offset
1个回答
0
投票

您需要在用户表单的代码隐藏模块中放置一个事件例程:在表单编辑器中,双击组合框:它将在您的代码中创建一个在

Change
事件触发的例程。

组合框中显示的所有值都可以通过属性

List
获得,数据存储在二维数组中(第一个索引是行号,第二个索引是列号)。请注意,两个维度都是从 0 开始的。

您可以使用属性

ListIndex

访问所选行的编号

假设组合框的名称为

ComboBox1
,文本框的名称为
TextBox1
,代码将如下所示:

Private Sub ComboBox1_Change()
    With Me.ComboBox1
        Me.TextBox1.Value = .List(.ListIndex, 1)
    End With
End Sub
© www.soinside.com 2019 - 2024. All rights reserved.