Некоторые ячейки в моей книге содержат значение 'A'. Я хочу заменить значение 'A' на 'B'.
Они разбросаны по нескольким листам. Какой наиболее эффективный способ реализовать замену в VBA?
решение1
Это работает для меня.
For Each wb In Workbooks
For Each sh In wb.Worksheets
sh.Cells.SpecialCells(xlCellTypeConstants).Replace What:="a", Replacement:="b", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
Next sh
Next wb
Все, что я сделал, это использовал макрорекордер для записи операции поиска и замены, а затем добавил циклы.
Если вы не хотите вносить изменения во все открытые книги, удалите внешнюю For
Next
пару, но я подумал, что это упростит одновременный запуск нескольких книг.