基于其他列的自动编号
Autonumbering based on other column
我在 excel.
中得到了一个要通过宏处理的文件
- A 列包含 1-10 的值
- C 列包含 C1 中的值
- 对于 A 列中的每个值 6,同一行中 C 列中的相应单元格应更新为从 C1 中的值开始按顺序递增的值。
我遇到了类似下面的问题,但它给出了很多问题,但它显示了我正在寻找的概念。
Sub customernumberext()
Dim a As Range, i As Long
Range("C1").Select
If ActiveCell.Value <> Empty Then
i = "C1"
For Each a In ActiveSheet.Range("a:a") where a.value = "6"
row c = i
i = i + 1
Next a
Else: MsgBox ("no number present")
End If
End Sub
如果我正确阅读了您的描述和错误代码,这应该可以解决问题。
Sub incr_C()
Dim rw As Long, lr As Long
With ActiveSheet
lr = .Cells(Rows.Count, 1).End(xlUp).Row
For rw = 2 To lr
If .Cells(rw, 1).Value = 6 Then
.Cells(rw, 3) = Application.Max(Range("C1:C" & rw - 1)) + 1
End If
Next rw
End With
End Sub
我在 excel.
中得到了一个要通过宏处理的文件- A 列包含 1-10 的值
- C 列包含 C1 中的值
- 对于 A 列中的每个值 6,同一行中 C 列中的相应单元格应更新为从 C1 中的值开始按顺序递增的值。
我遇到了类似下面的问题,但它给出了很多问题,但它显示了我正在寻找的概念。
Sub customernumberext()
Dim a As Range, i As Long
Range("C1").Select
If ActiveCell.Value <> Empty Then
i = "C1"
For Each a In ActiveSheet.Range("a:a") where a.value = "6"
row c = i
i = i + 1
Next a
Else: MsgBox ("no number present")
End If
End Sub
如果我正确阅读了您的描述和错误代码,这应该可以解决问题。
Sub incr_C()
Dim rw As Long, lr As Long
With ActiveSheet
lr = .Cells(Rows.Count, 1).End(xlUp).Row
For rw = 2 To lr
If .Cells(rw, 1).Value = 6 Then
.Cells(rw, 3) = Application.Max(Range("C1:C" & rw - 1)) + 1
End If
Next rw
End With
End Sub