问题描述
我有一个类型为 (B2) 和 ID(A2) 的工作表。类型有大、小和中。 我正在使用以下公式从类型名称生成 ID。因此,对于 B2 值 Small,A2 值将是 Sm1。下面的公式写在A2上。
=CONCATENATE(LEFT(B2,2),COUNTIF($B$2:B2,B2))
问题是,我想要公式(或添加 vba 代码)来查找 A 列,如果 B 列值为中等,那么它必须在 A 列中看到最后一个带有我的数字并输入下一个数字。>
解决方法
最简单的方法是通过添加一个数字列
=COUNTIFS(B$1:B2,"="&B2)
然后只需将 B 列与这个新列中的值结合
这比试图找到这个值之前的最后一个值更容易,但会给出相同的结果。
,将您的数据格式化为表格 => Home > 在样式组中“格式化为表格” 您的公式将在您添加数据时添加。
,=CONCATENATE(LEFT(C3,2),COUNTIF($C$2:C3,C3))
A3 单元格中的上述公式将查看 C3 的前两个字母,然后计算相同的两个字母的下一个数字。因此,如果 C3 是零件而 Pa2 已经存在,那么 A3 将成为 Pa3。
我完成了。感谢您的帮助,但我按照自己的方式解决了。