我在一家小公司工作,需要帮助设置我们的新库存管理系统。我已经准备好了 Excel 文档,条形码扫描仪将条形码直接输入到单元格中,但我遇到了一个问题。我们有 100 多个零件,每个零件都有一个特定的工作表选项卡,每个选项卡都标有特定的零件号。有没有什么办法可以编写一个工作表,当扫描零件号条形码时,比如 1234LOCK,Excel 会自动转到标有 1234LOCK 的工作表?
答案1
1234LOCK
将其放置在您扫描条形码时所输入的工作表的工作表模块中。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim ws As Worksheet
Dim lastRow As Long
If Range("C" & Rows.Count).End(xlUp).Row = Range("D" & Rows.Count).End(xlUp).Row Then
lastRow = Range("C" & Rows.Count).End(xlUp).Row
ElseIf Range("C" & Rows.Count).End(xlUp).Row < Range("D" & Rows.Count).End(xlUp).Row Then
lastRow = Range("D" & Rows.Count).End(xlUp).Row + 1
End If
If Target.Address = "$C$" & lastRow Then
For Each ws In ActiveWorkbook.Worksheets
If ws.Name = Range("C" & lastRow).Value Then
ws.Activate
End If
Next ws
End If
End Sub
我假设您的扫描将触发工作表更改,并且名称将进入A1
。