Недавно я сделал цикл, который берет строку в каждой ячейке, ищет «_» в строке и, если есть, отрезает этот бит и любой символ после него. Глядя на код, я понял, что он может быть слишком сложным и может быть сокращен или упрощен, но я не совсем уверен, как это сделать. Есть ли способ сделать этот бит кода более эффективным?Excel VBA - Ищете способы упрощения цикла
Sub Name_Change()
Sheets("Sheet1").Activate
Dim tg_row As Integer
tg_row = 1
For Each nm_cl In Range("Table1[Name]")
If InStr(1, nm_cl, "_", vbTextCompare) = 0 Then
Range("Table1[Name]").Cells(tg_row, 1).Value = nm_cl.Value
Else
Range("Table1[Name]").Cells(tg_row, 1) = _
Left(nm_cl, InStr(1, nm_cl, "_", vbTextCompare) - 1)
End If
tg_row = tg_row + 1
Next nm_cl
End Sub
Благодарим за помощь!
О том, как велик диапазон 'Table1 [Имя]'? менее 65 тыс. строк? – Degustaf
Он изменяется, но я не видел его более чем 5K строк – bcwhite1618