重复一系列的数字-需要唯一的ID

时间:2018-07-19 08:45:28

标签: excel vba excel-vba excel-formula

过去3天,我一直在处理一个问题,但找不到任何解决方案。

How to get to the output?

我在A列中有一系列重复的数字。

A列中的顺序基本上是:1,2,1,3,1,2 ...

C列是这样的:它遵循序列1,2,1,3,1,2。 1 = A,2 = A,1 = B,3 = A,1 = C,2 = B

我需要获得C列中的输出(对我来说是最大的挑战)。

我将把A列和C列的结果连接起来以获得D列(这是简单的部分)。

我的数据集中大约有50,000行,因此无法手动进行:(

很抱歉,如果以前已经讨论过此问题。无法找到这样发布的解决方案。

非常感谢您的阅读!


其他信息:A列中的最大值为6,确切的顺序为:1,2,1,3,1,4,1,5,1,6,1,1,2(预期的对应顺序) C列中的是:A,A,B,A,C,A,D,A,E,A,F,G,B)

2 个答案:

答案 0 :(得分:2)

这应该做到:

Sub write_column_C()
    Dim num(6)
    Dim lastnum As Long
    Dim c As Range

    lastnum = 0

    With Worksheets("YourSheetNameHere")
        For Each c In .Range("A1:A" & .Cells(.Rows.Count, "A").End(xlUp).Row).Cells
            If c.Value <> lastnum Then
                num(c.Value) = num(c.Value) + 1
            End If
            lastnum = c.Value
            c.Offset(0, 2) = Chr(64 + num(c.Value))
        Next
    End With
End Sub

答案 1 :(得分:1)

可用于公式和辅助列:

在E列(帮助器)中:$firstFourPosts = $category->posts()->take(4)->get();

在C列(输出)中:=IF(A2=A1,"",A2)

enter image description here