我有一个数据编码项目。
我将在 A 列(设备类型)中输入我的数据,公式化的单元格将在 B 列中。B 列包含一个以 A 列中的值开头的字符串,并向其附加一个特定于设备的计数器。
A 列中的不同设备类型可以任意排序。计数器需要在设备类型内递增。
每当我在 A 列的一行中输入新数据时,就会自动创建 B 列值,并为该设备类型将计数器加 1。
在示例中,列表以两个类型 A 开始,它们的计数器是001
和002
。四行之后,有更多类型 A,它们的计数器递增到003
和004
。
在中间,在第 3、4 和 5 行中,有类型 B、D 和 C。每个类型都有一个从 开始的计数器001
。再往下,有第二种类型 D 和 C,每个类型的计数器加 1。然后是第二种和第三种类型 B,这些计数器递增到002
和003
。
如何生成 B 列中的值?
B2中的公式:
您可以将 B 列公式预填充到任意大范围,它将显示一个空白单元格,直到您在 A 列中输入值。
它通过附加到列 A 值、连字符和计数器来构建显示值。具有“000”格式的 TEXT 函数根据需要为三位计数器提供前导零。
COUNTIF 计算 A 列中从开头到当前行与当前 A 列值匹配的值。
如果您打算取 A 列数据的最后一个字符,然后加上数字,最好的办法是使用如下基本公式:
问题是如果您不使用 A1,只需减去行以达到 1 作为起始编号。因此,如果您的数据从第 10 行开始,则代码应为:
在A1中放置一些值,然后
在B1中。然后在B2输入:
并向下复制:
如您所见,B列中的前缀将在x和y之间来回切换,而后缀将根据需要递增。