Excel VBA库存sorting

我正在尝试使清单扫描过程有点简单。 我们扫描进货。 扫描器向Excel发送一个string,如'XYZ123' 。 我想要做的是,而不是用户手动select列,我想Excel的扫描string发送到各自的列。 例如,假设有3个可能的列'PO''Item''SN'

  • PO将以'XYZ'
  • Item将以'ABC'开始
  • SN'LMN'开始

如果扫描值以'ABC'开始,则必须将其发送到'Item'列。

这可能吗? 我尝试使用search,精确和其他几个公式,迄今为止没有任何工作。

谢谢,

 Sub test_inventory_sorting() Dim v_arr(1 To 3) As String, v As Variant v_arr(1) = "XYZ1234" v_arr(2) = "LMN73456" v_arr(3) = "ABCzxcv" For Each v In v_arr Debug.Print v; " goes to "; get_col(CStr(v)) Next v End Sub Function get_col(ByVal p_val As String) As String If p_val Like "ABC*" Then get_col = "SN" ElseIf p_val Like "LMN*" Then get_col = "Item" ElseIf p_val Like "XYZ*" Then get_col = "PO" Else get_col = "Invalid" End If End Function