0

我在使用 VBA 的第三天。到目前为止很好,但我目前的问题是头疼。

我有一个主表(表 A),其中包含三个下拉列表(职位、区域、部门)。一旦用户在下拉列表中进行选择,我的第二张表(表 B)需要输入我的第三张表(表 C)中包含的数据。

表 C 如下所示:

(无法粘贴图片)

我希望工作表 A 中的三个下拉菜单在 B、C 和 D 列(职位、区域、部门)中进行搜索。一旦确定了正确的行,我希望 F、G、H、... 列中的“程序”(程序在作业旁边水平列出)中的信息水平填充到工作表 B 中。

对我来说,这似乎很有挑战性。但希望 VBA 大师能证明我错了。

4

1 回答 1

0

你可以试试这个方法。


在此处输入图像描述

在此处输入图像描述

在此处输入图像描述


代码是


Private Sub ComboBox3_Change()

With Worksheets("Sheet3")
    .AutoFilterMode = False
    .Range("B:D").AutoFilter Field:=1, Criteria1:=ComboBox1.Value, Operator:=xlAnd
    .Range("B:D").AutoFilter Field:=2, Criteria1:=ComboBox2.Value, Operator:=xlAnd
    .Range("B:D").AutoFilter Field:=3, Criteria1:=ComboBox3.Value, Operator:=xlAnd
End With

With Worksheets("Sheet3")
    If rowNumber = 1 Then
        MsgBox "No Record with those details."
    Else
        rowNumber = .Range("F65536").End(xlUp).Row
        Worksheets("Sheet3").Range("F" & rowNumber & ":H" & rowNumber).Copy
        Worksheets("Sheet2").Range("A2").PasteSpecial
    End If
End With

结束子


希望这会帮助你。

于 2013-03-01T14:15:43.543 回答