包含唯一 ID 号的 Excel 列

问题描述 投票:0回答:1

我正在尝试创建一个 Excel 电子表格,其中包含自动分配给每一行的唯一编号 (ID)。

唯一ID 一些文字
1 abc
2 定义
3
4 jkl

当在现有行之间插入新行时(在本例中:在条目 2 和 3 之间)是否可以获得以下结果?不应更改现有 ID,应为新行分配新 ID。

唯一ID 一些文字
1 abc
2 定义
5 这是新行
3
4 jkl

宏是执行此操作的最佳方法吗?
据我所知,如果使用公式,那么它们将不会自动复制到新插入的行。

excel vba
1个回答
2
投票

这个答案当然并不完美,但这是一个好的开始:

Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Column = 2 Then
  Target.Offset(0, -1).Value = WorksheetFunction.Max(Range("A:A")) + 1
  End If
End Sub

这意味着:

  • 如果您更改工作表中的某些内容
    Private Sub Worksheet_Change(ByVal Target As Range)
  • 如果您在第二列(“B”)中更改它
    If Target.Column = 2 Then
  • 选取第一列中的单元格(左边的单元格)
    Target.Offset(0, -1)
  • 将整个“A”列的最大值加一:
    WorksheetFunction.Max(Range("A:A")) + 1

这是添加这个的方法:

© www.soinside.com 2019 - 2024. All rights reserved.