我有一个工作簿,用户可以在其中添加信息I.E用户名和密码。
Sheet2是存储所有数据的地方。我使用列A,B和C.
我的UserForm上有一个组合框。我的组合框的原始来源是A栏。当用户从组合框中选择一个选项时,我希望它复制B列和B组中的值。 C并将值粘贴到另一个工作表中。这就是我到目前为止所做的:
ActiveSheet.Range("$A$1:$F$3").AutoFilter Field:=1, Criteria1:=ComboBox1.Value
Range("B2:C2").Select
Selection.Copy
Sheets("Displaypage").Select
Range("A1").Select
ActiveSheet.Paste
Sheets("Database").Select
ActiveSheet.Range("$A$1:$F$3").AutoFilter Field:=1
Range("A2").Select
但是当我运行这个时,我得到范围类的Autofilter方法失败
有没有人有其他想法?
答案 0 :(得分:0)
假设您的组合框由RowSource属性填充,请尝试尝试:
Private Sub ComboBox1_Change()
Dim cbo As ComboBox
Dim wsDest As Worksheet
Dim rngData As Range
Set cbo = Me.ComboBox1
Set wsDest = Sheets("Displaypage")
Set rngData = Range(cbo.RowSource)
wsDest.Range("A1:B1").ClearContents 'Remove previous data (if any)
If cbo.ListIndex = -1 Then Exit Sub 'Nothing selected
rngData.Cells(1).Offset(cbo.ListIndex, 1).Resize(, 2).Copy wsDest.Range("A1")
End Sub