Я новичок в Excel VBA, и в настоящее время я работаю с проектом, которому необходимо автоматически заполнять порядковые номера в столбце A в зависимости от заполненного диапазона в столбце B.
С кодом ниже, который я нашел на форуме ozgrid.com, он автоматически заполняет столбец A от 1 до последней использованной строки в соседней ячейке, которая находится в столбце B. Но в моем случае у меня есть пользовательская форма, и у нее есть команда При нажатии этой кнопки он должен просто продолжать генерировать уникальный ссылочный идентификатор в столбце A от максимального числа в последней заполненной ячейке в столбце A до последней заполненной ячейки в соседней ячейке, которая является столбцом B.
И проблема с кодом ниже состоит в том, что при первом нажатии кнопки команды она генерирует порядковые номера от 1 до последней использованной строки в столбце B, но когда кнопка команды нажимается снова, столбец A автоматически заполняется с 1 снова использовать последний использованный ряд вместо продолжения максимального числа, существующего в столбце А.
Например, максимальное число при первом нажатии в командной кнопке равно 82. При следующем нажатии на командную кнопку ячейка под последней использованной строкой должна быть от 83 до последней использованной строки в столбце B.
Кроме того, я предоставил изображение моего графического интерфейса ниже для вашего удобства.
Sub SequenceLoop()
Dim k, i As Long, n As Long
Dim LR1 As Long
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1")
LR1 = ws.Range("B" & ws.Rows.Count).End(xlUp).Row
With Range("A2:A" & LR1)
k = .Value
For i = 1 To UBound(k, 1)
If Len(k(i, 1)) = 0 Then
n = n + 1
k(i, 1) = n
End If
Next
.Value = k
End With
End Sub
Графический интерфейс для автозаполнения данных в столбце B. При нажатии кнопки «Создать шаблон» выполняется автоматическое заполнение определенных данных в столбце B:
Графический интерфейс для автозаполнения порядковых номеров в столбце A: