要在 VBA 窗体中的文本框 'TextBox9' 中显示与工作表 '产品编号总表' 中 B 列中与窗体中的文本框 'ComboBox4' 的值相匹配的单元格 E 列的值,可以使用以下代码:

Private Sub ComboBox4_AfterUpdate()
    Dim ws As Worksheet
    Dim lookupValue As String
    Dim lookupRange As Range
    Dim resultCell As Range
    
    Set ws = Sheets("产品编号总表")
    lookupValue = ComboBox4.Value
    Set lookupRange = ws.Range("B:B")
    Set resultCell = lookupRange.Find(lookupValue)
    
    If Not resultCell Is Nothing Then
        TextBox9.Value = resultCell.Offset(0, 3).Value
    Else
        TextBox9.Value = ""
    End If
End Sub

在上面的代码中,我们使用 ComboBox4_AfterUpdate 事件来捕获窗体中的文本框 'ComboBox4' 的值更改。当用户在该下拉框中选择新值后,将触发此事件。

在事件处理程序中,我们首先设置 ws 为工作表 '产品编号总表'。然后,我们将 'ComboBox4' 的值赋给 lookupValue 变量。

接下来,我们设置 lookupRange 为 'B:B' 列范围,即工作表 '产品编号总表' 的 B 列范围。然后,我们使用 lookupRange.Find 方法查找与 lookupValue 相匹配的单元格。

如果找到匹配的单元格,我们将使用 resultCell.Offset(0, 3).Value 获取该单元格右侧偏移 3 列(即 E 列)的值,并将其赋给文本框 'TextBox9' 的值。如果没有找到匹配的单元格,我们将 'TextBox9' 的值设为空字符串。

请确保你已经将这段代码放置在窗体的代码模块中,并将 'ComboBox4_AfterUpdate' 事件与文本框 'ComboBox4' 关联。

VBA 窗体文本框显示匹配工作表数据

原文地址: https://www.cveoy.top/t/topic/3Dm 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录