基于另一列生成ID

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

我只是想为所有的空白单元格产生一个相同的代码,跟着上面的非空白单元格。

enter image description here

excel excel-vba excel-formula
1个回答
1
投票

假设你的表的第一行已经有了一个值,你可以把这个值放到第二行(D4 在您的照片中)并根据需要向下拖动

=IF(B4="",A3,A3+1)

如果你真的决定使用VBA,你可以试试这个宏。请注意,这不需要填入表的第一行,编号将停在在 Type 专栏

Sub Test()

Dim ws As Worksheet: Set ws = ThisWorkbook.Sheets("Sheet1")
Dim xCell As Range

For Each xCell In ws.Range("A3:A" & ws.Range("B" & ws.Rows.Count).End(xlUp).Row)
    If xCell.Offset(0, 1) <> "" Then
        xCell = Application.WorksheetFunction.Max(ws.Range("A3:A" & xCell.Row)) + 1
    Else
        xCell = xCell.Offset(-1)
    End If
Next xCell

End Sub

enter image description here


0
投票

欢迎来到SO。

你可以尝试使用一个简单的 COUNTIF 方法。

=COUNTIF($B$3:B3,"<>"&"")

enter image description here

这将计算在特定范围内有多少个独行侠不是空白的。对于E列,使用 =B3&"" 复制B列的值。

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