有没有办法让 Excel 在扫描特定条形码时在工作表之间切换

有没有办法让 Excel 在扫描特定条形码时在工作表之间切换

我在一家小公司工作,需要帮​​助设置我们的新库存管理系统。我已经准备好了 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

相关内容