VBA如何在条形码扫描到文本框后自动插入工作表

时间:2018-12-11 11:50:53

标签: excel vba

目前,我的代码是用户扫描条形码,然后按Enter键插入工作表,但我想在将条形码扫描到文本框后更改其自动输入。

我更改了 Private Sub 类型,并且根据研究进行了一些更改,但这是行不通的。

Private Sub ID_AfterUpdate()
If ID.Value = "" Then
MsgBox "Please Insert ID!", vbExclamation, "Warning!"

ElseIf ID.Value <> "" Then

Dim iRow1 As Long
Dim WS As Worksheet
Set WS = Worksheets("sheet1")

iRow1 = WS.Cells.Find(What:="*", SearchOrder:=xlRows, _
    SearchDirection:=xlPrevious, LookIn:=xlValues).Row + 1 

With WS
 .Cells(iRow1, 1).Value = ID.Value
 End With
Unload Me
On Error Resume Next
UserForm1.Show
On Error GoTo 0

    End If
End Sub

1 个答案:

答案 0 :(得分:0)

根据您的情况:

您可以实现功能Private Sub Worksheet_Change(ByVal目标为范围)

https://support.microsoft.com/en-gb/help/213612/how-to-run-a-macro-when-certain-cells-change-in-excel

假设您的条码读取器“戳”单元格中的字符,则会触发该字符。

您还可以在basr代码的末尾添加序列,如下所示: https://www.youtube.com/watch?v=O72BKIGLpnQ