早上好,
我正在构建一个表,我想为每个条目分配一个唯一的ID号,当新值输入到表中时,ID号会自动递增。下面是一个示例表,用于提供视觉效果:
+----+------------+-----------+
| ID | First Name | Last Name |
+----+------------+-----------+
| 1 | John | Smith |
| 2 | Steve | Wozniak |
| 3 | Steve | Jobs |
+----+------------+-----------+
在上表中,如果我输入第4个人,我希望ID是自动生成的(在本例中为4(。我试过一种细胞内配方,比如:
=Row([@ID])-1
这一直有效,直到你对表格进行排序,在这种情况下,ID号都被打乱了。我想计算行号应该是多少,但要保持这个值不变。有什么想法吗?
如果你想要一个静态增量键,你应该在你的输出工作表中使用这样的代码
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Then
Target.Offset(0, -1).Value = Target.Row - 1
End If
End Sub
如果你只想要一个唯一的键,它实际上并没有基于上一个键递增,你可以在A2单元格中使用=SUM(CODE(MID(B2&C2,ROW(INDIRECT("1:"&LEN(B2&C2))),1)))
这样的公式(用CSE结束(,然后下拉。但是,如果过多地扩展公式,则会影响图纸的性能。