自动递增ID号(适用于排序)



早上好,

我正在构建一个表,我想为每个条目分配一个唯一的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结束(,然后下拉。但是,如果过多地扩展公式,则会影响图纸的性能。

相关内容

最新更新