Запустите VBA через указанный диапазон c - PullRequest
0 голосов
/ 13 марта 2020

Я получил этот код, но он работает только для одной строки.

Как заставить его работать на весь столбец?

Public Sub StripLastName()

Dim strLastName As String

strLastName = Range("A2")
strLastName = Right(strLastName, 8)
strLastName = Trim(strLastName)

Range("C2") = strLastName

End Sub

Ответы [ 2 ]

0 голосов
/ 13 марта 2020

Другое решение без l oop:

Public Sub StripLastName()

    Dim strLastName As String
    Dim LastRow As Long

    'Create a with statement including the worksheet you want work with
    With ThisWorkbook.Worksheets("Sheet1")

        LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row

        .Range("C2:C" & LastRow).Formula = "=TRIM(RIGHT(OFFSET(C2,0,-2),8))"

    End With

End Sub
0 голосов
/ 13 марта 2020

Просто сделайте это для L oop.


Dim strLastName As String

dim i as long
dim lastrow as long

lastrow = Range("A" & rows.count).End(xlup).Row

for i = 2 to lastrow

strLastName = Range("A" & i)
strLastName = Right(strLastName, 8)
strLastName = Trim(strLastName)

Range("C" & i) = strLastName

Next i 

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...