这是更大进程的一部分。数据如下:
code cat Status
aa A K
aa B L
aa C M
aa A
aa D
当代码到达第5行时,我想检查上面的所有行,并找出A类别状态已经被指定为K并将其放在当前行中,然后移动到下一行。它应检查所有行。
如果上述行中没有相同的类别,则应转到名为'列表'其中包含代码,cat级别状态信息并选择该状态。
答案 0 :(得分:0)
当您的示例数据到达代码:aa,状态:D 时将显示错误,因为 aa,D 组合。
话虽如此,这应该是你最快的方法。
Dim rng As Range
With ActiveSheet.Cells(1, 1).CurrentRegion
On Error Resume Next
Set rng = .Columns("C").SpecialCells(xlCellTypeBlanks)
On Error GoTo 0
If Not rng Is Nothing Then
rng.FormulaR1C1 = "=IFERROR(INDEX(R1C:R[-1]C, MIN(INDEX(ROW(R1:R[-1])+((R1C[-1]:R[-1]C[-1]<>RC[-1])+(R1C[-2]:R[-1]C[-2]<>RC[-2]))*1E+99, , ))), """")"
rng = rng.Value
End If
End With
如果样本数据不仅仅是编辑错误,请编辑您的问题以包含有关特殊情况的更多细节,并且可以提供更多帮助。