Здравствуйте, подскажите, пожалуйста, код VBA, который определит номер столбца находясь в активной строке в определенном диапазоне с 5:10 столбец. Например я нахожусь во 2 строке и использовав код, уведомление должно выдать цифру "6", так как с 5:10 столбец только в 6 столбце есть заполненные данные, если я нахожусь в 3 строке, то уведомление должно выдать цифру "8", так как последняя заполненная ячейка в диапазоне с 5:10 столбец в 3 строке выпадает на 8 столбец.
vikttur, к сожалению, обязательно VBA. Мне нужно растянуть последнюю заполненную ячейку в активной строке в диапазоне 5:10 столбец до столбца "J". Значения разные бывают, в 5 может стоять "1", в 6 может стоять "2", и нужно, чтобы последняя заполненная ячейка с данными "2" и растянулась до 10 столбца
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim j As Long
If Intersect(Range("B2:J99"), Target) Is Nothing Then Exit Sub
With Target
For j = 10 To 2 Step -1
If Cells(.Row, j) <> "" Then
If j = 10 Then Exit Sub
If MsgBox("Столбец " & j & Chr$(10) & "Заполнить?", 64 + vbYesNo, "") = vbNo Then Exit Sub
Range(Cells(.Row, j), Cells(.Row, 10)).Value = Cells(Target.Row, j)
Exit Sub
End If
Next j
End With
End Sub
Sub iLastColumn()
Dim i As Long
Dim iLastRow As Long
Dim j As Integer
iLastRow = Cells(Rows.Count, 1).End(xlUp).Row
Range("M2:M" & iLastRow).ClearContents
For i = 2 To iLastRow
For j = 10 To 5 Step -1
If Cells(i, j) <> "" Then
Cells(i, 13) = Cells(i, j).Column
Exit For
End If
Next
Next
End Sub