我有一个唯一身份证的订单及其缩进的级别。它们是有序的,因此当前ID的父级是1比当前缩进级别小1的ID(例如,如果当前缩进级别为3,则父ID将是其上方第一行的id,其中缩进级别3-1 = 2,在这种情况下,UniqueID = 4)。
我想要一个新列,其中包含当前UniqueID的父UniqueID。
由于
答案 0 :(得分:0)
我明白了。我编写了一个包含以下内容的Visual Basic脚本:
Function parent(r As Range) As Integer
curVal = r.Value
desiredCol = 2
parentFound = False
counter = 1
'loop through until parent is found or at beginning
Do Until CInt(r.Row) < 2 Or parentFound = True
If r.Offset(-counter, 0).Value < curVal Then
parentFound = True
desiredRow = r.Offset(-counter, 0).Row
End If
counter = counter + 1
Loop
parent = r.Offset(-counter + 1, -1).Value
End Function
这将在列中低于它的级别搜索上面的第一个单元格,并在其左侧获取ID的值。