Страницы: 1
RSS
Выполнить макрос для выделенных листов
 
Доброе утро! Помогите пожалуйста выполнить данный код на выделенных ячейках листов. Т.е. что бы выделить листы, затем выделить ячейки и выполнить данный макрос в них :)
Код
For Each TheCell In Selection
   TheCell.Formula = "=" & Mid(TheCell.Formula, InStr(1, TheCell.Formula, "(") + 1, InStr(2, TheCell.Formula, "=") - 1 - InStr(1, TheCell.Formula, "("))
Next
 
Доброе.
Не зная листов, для каких надо выполнять действия, не зная Selection в котором надо выполнять действия, не видя формул, которые находятся в ячейках этого "Selection", как вы думаете - можно ответить на ваш вопрос?
Кому решение нужно - тот пример и рисует.
 
Здесь даже спасибо сказали. Что-то пошло не так?
Согласие есть продукт при полном непротивлении сторон
 
Sanja Там было без учета выделения листов, только областей на одном из них. И честно говоря, я пока пас.
По вопросам из тем форума, личку не читаю.
 
Цитата
БМВ написал: Там было без учета выделения листов
Ну как-же
Код
For Each Sh In ThisWorkbook.Windows(1).SelectedSheets

А для того, что-бы обрабатывать выделенные ячейки на листе нужно этот лист активировать

Изменено: Sanja - 20.02.2017 10:43:57
Согласие есть продукт при полном непротивлении сторон
 
Sanja Да пока писал сбил выделение и формулы в ячейке небыло :-)
Код
Sub test()
For Each TheSheet In ActiveWindow.SelectedSheets    
For Each TheCell In Selection
        With TheSheet
            On Error Resume Next
            .Range(TheCell.Address).Formula = "=" & Mid(.Range(TheCell.Address).Formula, InStr(1, .Range(TheCell.Address).Formula, "(") + 1, InStr(2, .Range(TheCell.Address).Formula, "=") - 1 - InStr(1, .Range(TheCell.Address).Formula, "("))
        End With
Next
Next
End Sub
И нелюблю активировать.
Изменено: БМВ - 20.02.2017 11:11:03
По вопросам из тем форума, личку не читаю.
 
БМВ, Спасибо
Страницы: 1
Наверх