我正在尝试使用用户表单提取数据。
以下是Excel列的结构:
sheet1:
column 1|column 2|column 3|column 4|column 5
Sheet2:
column 1|column 2| ......................................... column xx
两列中的列1相同。我想要一个下拉列表从第1列中选择任何值,这些字段应该根据第1列的选定值显示在用户窗体中。
第1列|第1列第2列|第2列------第2页的第xx列|第1栏第4,5,5页
以下是我创建的代码,但无法选择所需的数据
Private Sub ComboBox1_Change()
Application.ScreenUpdating = False
Dim CL As Object
Worksheets(2).Select
For Each CL In Worksheets(2).Range("A2:A20")
If CL = ComboBox1.Text Then
Range(ActiveCell, ActiveCell.Offset(0, 4)).Copy Destination:=ActiveCell.Offset(0, 5)
End If
Next
Worksheets(2).Select
End Sub
Private Sub UserForm_Activate()
ComboBox1.RowSource = ("A2:A20")
End Sub
答案 0 :(得分:0)
怎么样......
Private Sub ComboBox1_Change()
Application.ScreenUpdating = False
Dim CL As Excel.Range
For Each CL In Worksheets(2).Range("A2:A20")
If CL = ComboBox1.Text Then
'# CL.Resize(0, 5).Copy Destination:=CL.Offset(0, 5)
'# Or even better...
CL.Offset(0, 5).Resize(0, 5).Value = CL.Resize(0, 5)
End If
Next
Application.ScreenUpdating = True
End Sub
Private Sub UserForm_Activate()
ComboBox1.RowSource = "A2:A20"
End Sub
我像以前一样离开了副本的目的地,虽然我不确定这是实现了什么......