Рассмотрите возможность использования al oop:
Sub addDetail()
Dim roww As Long
With Sheets("sheet1")
For roww = 11 To 35
.Range("Q" & roww).Value = Environ("username") & " - " & Format(Now, "mm/dd/yyyy HH:mm:ss")
.Range("N" & roww).Value = "Success"
Next roww
End With
End Sub
Аналогичным образом вы можете создать процедуру создания кнопок, которая использует al oop для размещения кнопок в строках с 11 по 35.
РЕДАКТИРОВАТЬ # 1:
Я поместил маленькую кнопку Forms
в строку # 11 и назначил ей этот макрос:
Sub Button1_Click()
Dim s As Shape
shapename = Application.Caller
Set s = ActiveSheet.Shapes(shapename)
Call addDetail(s.TopLeftCell.Row)
End Sub
Макрос может быть используется для всех кнопок.
Макрос определяет строку, в которой он находится, и вызывает подпрограмму addDetails()
с правильной информацией о строке. Мы должны изменить addDetails()
, чтобы принять строку:
Sub addDetail(roww As Long)
With Sheets("sheet1")
.Range("Q" & roww).Value = Environ("username") & " - " & Format(Now, "mm/dd/yyyy HH:mm:ss")
.Range("N" & roww).Value = "Success"
End With
End Sub