Здравствуйте! Вопрос вот в чем. Рекордером записал Макрос, кое-что убрал и что-то добавил.В результате получилось так[vba]
Код
Sub Макрос1() ActiveSheet.Shapes("Button 1").Select If Selection.Characters.Text = "ДА" Then Selection.Characters.Text = "НЕТ" With Selection.Font .ColorIndex = 5 End With Else: Selection.Characters.Text = "ДА" With Selection.Font .FontStyle = "полужирный" .ColorIndex = 3 End With End If 'Range("F20").Select End Sub
[/vba] Подскажите пожалуйста- возможно ли сделать тоже самое, но без выделения кнопки (обратиться напрямую или еще как нибудь) Недостаток здесь в том, что после выполнения этого Макроса кнопка остается выделенной. Как снять выделение не выделяя,например,любую ячейку? Спасибо!
Здравствуйте! Вопрос вот в чем. Рекордером записал Макрос, кое-что убрал и что-то добавил.В результате получилось так[vba]
Код
Sub Макрос1() ActiveSheet.Shapes("Button 1").Select If Selection.Characters.Text = "ДА" Then Selection.Characters.Text = "НЕТ" With Selection.Font .ColorIndex = 5 End With Else: Selection.Characters.Text = "ДА" With Selection.Font .FontStyle = "полужирный" .ColorIndex = 3 End With End If 'Range("F20").Select End Sub
[/vba] Подскажите пожалуйста- возможно ли сделать тоже самое, но без выделения кнопки (обратиться напрямую или еще как нибудь) Недостаток здесь в том, что после выполнения этого Макроса кнопка остается выделенной. Как снять выделение не выделяя,например,любую ячейку? Спасибо!pechkin
Сообщение отредактировал pechkin - Понедельник, 08.09.2014, 12:25
Sub Enabled_Click() If ActiveSheet.DrawingObjects("Блок").Characters.Text = "БЛОКИРОВКА ОТКЛЮЧЕНА" Then ActiveSheet.DrawingObjects("Блок").Characters.Text = "БЛОКИРОВКА ВКЛЮЧЕНА" Else ActiveSheet.DrawingObjects("Блок").Characters.Text = "БЛОКИРОВКА ОТКЛЮЧЕНА" End If End Sub
[/vba]
[vba]
Код
Sub Enabled_Click() If ActiveSheet.DrawingObjects("Блок").Characters.Text = "БЛОКИРОВКА ОТКЛЮЧЕНА" Then ActiveSheet.DrawingObjects("Блок").Characters.Text = "БЛОКИРОВКА ВКЛЮЧЕНА" Else ActiveSheet.DrawingObjects("Блок").Characters.Text = "БЛОКИРОВКА ОТКЛЮЧЕНА" End If End Sub
Андрей, не узнаю тебя. Ты не заболел? Без приложенного файла-примера не только советы даёшь, но и какие-то названия сам объектам даёшь, и их текст меняешь... И самое интересное, что топик-стартеру твой пример подходит! Ты что, в Вольфы Мессинги перекрасился и теперь всё телепатически отгадывать будешь? Во юзверги-то, не соблюдающие правила форума порадуются!
Андрей, не узнаю тебя. Ты не заболел? Без приложенного файла-примера не только советы даёшь, но и какие-то названия сам объектам даёшь, и их текст меняешь... И самое интересное, что топик-стартеру твой пример подходит! Ты что, в Вольфы Мессинги перекрасился и теперь всё телепатически отгадывать будешь? Во юзверги-то, не соблюдающие правила форума порадуются! Alex_ST
Ну тогда уж ради примера можно и сильно сократить твою блокировку[vba]
Код
Sub Locked_UnLocked() With ActiveSheet.DrawingObjects("Блок").Characters .Text = "БЛОКИРОВКА" & IIf(.Text Like "* ОТ*", " В", " ОТ") & "КЛЮЧЕНА" End With End Sub
[/vba]
Ну тогда уж ради примера можно и сильно сократить твою блокировку[vba]
Код
Sub Locked_UnLocked() With ActiveSheet.DrawingObjects("Блок").Characters .Text = "БЛОКИРОВКА" & IIf(.Text Like "* ОТ*", " В", " ОТ") & "КЛЮЧЕНА" End With End Sub
Sub Макрос2() With ActiveSheet.DrawingObjects("Button 1") .Characters.Text = "БЛОКИРОВКА" & IIf(.Characters.Text Like "* ОТ*", " В", " ОТ") & "КЛЮЧЕНА" .Font.ColorIndex = IIf(.Font.ColorIndex = 5, 3, 5) End With End Sub
[/vba]
А так всё-таки покомпактнее будет:[vba]
Код
Sub Макрос2() With ActiveSheet.DrawingObjects("Button 1") .Characters.Text = "БЛОКИРОВКА" & IIf(.Characters.Text Like "* ОТ*", " В", " ОТ") & "КЛЮЧЕНА" .Font.ColorIndex = IIf(.Font.ColorIndex = 5, 3, 5) End With End Sub