【发布时间】:2014-11-05 02:20:34
【问题描述】:
我正在尝试使库存扫描过程变得简单一些。
我们扫描进货。扫描器会向 Excel 发送一个字符串,例如 'XYZ123'。
我想要做的是,而不是用户手动选择列,我希望 excel 将扫描的字符串发送到相应的列。
例如,假设有 3 个可能的列 'PO'、'Item'、'SN'
-
PO将以'XYZ'开头 -
Item将以'ABC'开头 -
SN以'LMN'开头
如果扫描的值以'ABC' 开头,则必须将其发送到'Item' 列。
这可能吗?我尝试使用 Search、Exact 和其他一些公式,但到目前为止没有任何效果。
谢谢,
【问题讨论】:
-
你不能用公式来做到这一点——你需要使用 VBA。您可以使用
Worksheet_Change事件处理程序来检查已扫描的值并将其复制到所需位置。 -
我看不到 Excel 被用作实时更新类型系统,如果这是您想要的。我过去制作过 Worksheet_Change 解决方案,随着时间的推移,新用户或未启用宏等可能会导致维护问题。也许您可以将它们全部扫描到一列并在工作结束时将它们分开?您可以创建一个桶公式,它是
IF(LEFT(A1,3)="XYZ","PO","")&IF(LEFT(A1,3)="ABC","SN","")的串联以进行分组。 -
扫描仪如何将字符串发送到 Excel?您可能需要在该步骤中分析字符串,然后从那里将其发送到相应的列。