タグから情報を読み取るキーボード エミュレーション デバイスによって入力されるデータで Excel セルを埋めるソリューションに取り組んでいます。データが読み取られた後、キーボード エミュレーション デバイスは TAB や CR などの後置文字を送信して、別のセルに進みます。
VBA を使用して、そのセルが TAB/CR からフォーカスを失ったときに入力されたデータの長さをテストできるかどうかを判断しようとしています。正しい長さでない場合は、前のセルの内容を削除するか、ユーザーに問題があることを知らせるメッセージ ボックス ウィンドウを表示するオプションが必要です。
どこから始めればいいのか本当にわかりません。
何か案は?
編集 - これが私のために働いているコードです。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim iLen As Integer
If Target.Cells.Count > 1 Then Exit Sub ' bail if more than one cell selected
iLen = Len(Target.Value) ' get cell data length
If iLen = 0 Then Exit Sub ' bail if empty data
If Target.Column = 1 Then ' if Col A
If Target.Row = 1 Then Exit Sub ' bail if column header
If iLen <> 3 Then 'Replace *Your Value* with your length
MsgBox "You have entered an incorrect Value"
Application.EnableEvents = False 'So we don't get an error while clearing
Target.Offset(0, 0).Value = ""
Target.Offset(0, 0).Select
Application.EnableEvents = True ' So Excel while function normal again
End If
ElseIf Target.Column = 2 Then ' if Col B
If Target.Row = 1 Then Exit Sub ' bail if column header
If iLen <> 7 Then
MsgBox "You have entered an incorrect Value"
Application.EnableEvents = False
Target.Offset(0, 0).Value = ""
Target.Offset(0, 0).Select
Application.EnableEvents = True
End If
End If
End Sub