[英]Excel VBA copy data from one worksheet to another off of user input on another sheet
[英]Getting data from one sheet to another on the user input
我有一个Excel工作簿,在该工作簿中有许多工作表。
一个被称为main
data
,另一个被称为表data
,其中包含所有信息。
data
表在同一单元格中具有人的名字和分配的号码。
例如:A2会: 123 Chris Smith
我要实现的目的是让用户开始在主表中的任何位置键入数字,以扫描数据表并完成其余数据。
因此,用户将键入123,然后宏将填写其余的123克里斯·史密斯。
如前所述,您可以使用Worksheet_Change()
事件。 为了向您展示其工作原理,请将此代码放在编辑器的main
表中。 现在,键入与您的数据列表匹配的任何数字,然后单击该单元格之外的位置,它现在将完成。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim sht As Worksheet
Dim rng As Range
Dim val As Variant: val = Target.Value
Set sht = Worksheets("Data")
If Not IsError(val) And Not IsArray(val) Then
If val <> "" Then
Set rng = sht.Range("A:A").Find(val & "*", LookAt:=xlWhole)
If Not rng Is Nothing Then
Application.EnableEvents = False
Target.Value = rng.Value
Application.EnableEvents = True
End If
End If
End If
End Sub
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.