Есть ли способ заставить /program 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,

Другие вопросы по тегам