Вот несколько методов в VBA, позволяющих найти последний столбец в строке с данными:
Метод 1: использование метода End с xlToLeft
Dim lastColumn As Long
lastColumn = Cells(1, Columns.Count).End(xlToLeft).Column
Метод 2. Перебор ячеек в обратном порядке
Dim lastColumn As Long
Dim currentCell As Range
For Each currentCell In Range("1:1").Cells
If Not IsEmpty(currentCell) Then
lastColumn = currentCell.Column
End If
Next currentCell
Метод 3. Использование метода Find
Dim lastColumn As Long
With Range("1:1")
Set lastCell = .Find("*", SearchOrder:=xlByColumns, SearchDirection:=xlPrevious)
If Not lastCell Is Nothing Then
lastColumn = lastCell.Column
End If
End With
Метод 4. Использование метода SpecialCells с xlCellTypeLastCell
Dim lastColumn As Long
lastColumn = Cells(1, Columns.Count).SpecialCells(xlCellTypeLastCell).Column
Эти методы помогут вам найти последний столбец в строке с данными с помощью VBA.