Оптимизация кода по замене текста - VBA
Формулировка задачи:
Подскажите пожалуйста, как можно оптимизировать нижеуказанный код?
Листинг программы
- Sub www()
- Dim iSource As Range, iCell As Range
- Set iSource = Worksheets(1).Range("B:B")
- Set iCell = iSource.Find("найти1", , xlValues, xlPart)
- Do Until iCell Is Nothing
- iCell = "заменить1"
- Set iCell = iSource.FindNext
- Loop
- Set iCell = iSource.Find("найти2", , xlValues, xlPart)
- Do Until iCell Is Nothing
- iCell = "заменить2"
- Set iCell = iSource.FindNext
- Loop
- Set iCell = iSource.Find("найти...", , xlValues, xlPart)
- Do Until iCell Is Nothing
- iCell = "заменить..."
- Set iCell = iSource.FindNext
- Loop
- End Sub
Решение задачи: «Оптимизация кода по замене текста»
textual
Листинг программы
- Sub www()
- Const FND = "найти1|найти2|найтиХ"
- Const RPL = "заменить1|заменить2|заменитьX"
- Dim iCell As Range, i&, aFnd, aRpl
- aFnd = Split(FND, "|"): aRpl = Split(RPL, "|")
- With Worksheets(1).Range("B:B")
- For i = 0 To UBound(aFnd)
- Set iCell = .Find(aFnd(i), , xlValues, xlPart)
- Do Until iCell Is Nothing
- iCell = aRpl(i)
- Set iCell = .FindNext
- Loop
- Next
- End With
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д