如何在Google Sheets中匹配扫描RFID与库存ID并分配时间戳?
解决Google Sheets RFID匹配时间戳需求
前提假设
- ESP32扫描的RFID数据追加到A列(A1为表头,A2及以下是新增的扫描ID)
- 库存ID存储在B列(B1为表头,B2~B401对应400个库存条目)
- 时间戳将写入C列(对应每个库存ID的行)
方案1:匹配所有已扫描的ID(保留历史匹配)
在C2单元格输入以下公式,然后下拉填充到C401:
=IF(AND(ISBLANK(C2), COUNTIF(A:A, B2) > 0), NOW(), C2)
- 逻辑:仅当当前C列单元格为空,且A列中存在与B列当前库存ID匹配的RFID时,写入当前时间戳;否则保持原有内容(不会覆盖已有的时间戳)
- 时间戳格式:选中C列,右键设置单元格格式为「日期时间」或「数字」(数字格式即为Unix时间戳)
方案2:仅匹配最新扫描的ID(避免重复触发)
如果只希望响应ESP32最新发送的RFID,将C2公式改为:
=IF(AND(ISBLANK(C2), INDEX(A:A, COUNTA(A:A)) = B2), NOW(), C2)
- 逻辑:仅当最新扫描的RFID(A列最后一行)与当前库存ID匹配,且C列单元格为空时,写入时间戳
解决原方案的三个问题
- 无需逐行修改函数:只需在C2输入公式后下拉填充到所有库存行,400个ID也能一键完成
- 不会覆盖原有时间戳:通过
ISBLANK(C2)判断,仅为空时才写入新值,已有时间戳会保留 - 时间戳实现:
NOW()返回当前日期时间,可通过单元格格式设置转为所需的时间戳样式(日期时间/数字格式)
内容的提问来源于stack exchange,提问作者Dean Lowry
相关产品推荐
相关产品推荐

