Здравствуйте. Скажите, пожалуйста, как сделать так, чтобы при одном нажатии кнопки ячейке A2 присваивался текстовый формат, при втором это присвоение отменялось? Причём код на задание формата я даже на этом форуме видел, но не пойму, как сделать на одной кнопке два действия. Помогите, пожалуйста.
Здравствуйте. Скажите, пожалуйста, как сделать так, чтобы при одном нажатии кнопки ячейке A2 присваивался текстовый формат, при втором это присвоение отменялось? Причём код на задание формата я даже на этом форуме видел, но не пойму, как сделать на одной кнопке два действия. Помогите, пожалуйста.Фомулист
Фомулист, тригер имеет два состояния и перед переключеним производится оценка состояния и изменени й его на противоположное. Соотвтевенно смотрит на состояние того что нужно менять на противоположное и меняйте.
Фомулист, тригер имеет два состояния и перед переключеним производится оценка состояния и изменени й его на противоположное. Соотвтевенно смотрит на состояние того что нужно менять на противоположное и меняйте.bmv98rus
Замечательный Временно просто медведь , процентов на 20.
В Вашем файле - всё супер! НО когда я скопировал макрос и кнопку в свой файл, то при запуске получаю ошибку "Невозможно получить свойство DrawongObjects класса Worksheet Файл свой прилагаю. Помогите, пожалуйста преодолеть эту ошибку.
В Вашем файле - всё супер! НО когда я скопировал макрос и кнопку в свой файл, то при запуске получаю ошибку "Невозможно получить свойство DrawongObjects класса Worksheet Файл свой прилагаю. Помогите, пожалуйста преодолеть эту ошибку.Фомулист
a = InputBox("Укажите количество ячеек." & vbLf & _ "Например 20", "Сколько ячеек форматировать?")
apCall = Application.Caller With Sheets("Лист1") If .DrawingObjects(apCall).Caption = "Перейти в текстовый формат" Then .DrawingObjects(apCall).Caption = "Отменить текстовый формат" .DrawingObjects(apCall).Font.ColorIndex = 5 .Range("A38").Resize(a).NumberFormat = "@" Else .DrawingObjects(apCall).Caption = "Перейти в текстовый формат" .DrawingObjects(apCall).Font.ColorIndex = 3 .Range("A38").Resize(a).NumberFormat = "General" End If End With
End Sub
[/vba]
[vba]
Код
Sub Формат() Dim a&, apCall$
a = InputBox("Укажите количество ячеек." & vbLf & _ "Например 20", "Сколько ячеек форматировать?")
apCall = Application.Caller With Sheets("Лист1") If .DrawingObjects(apCall).Caption = "Перейти в текстовый формат" Then .DrawingObjects(apCall).Caption = "Отменить текстовый формат" .DrawingObjects(apCall).Font.ColorIndex = 5 .Range("A38").Resize(a).NumberFormat = "@" Else .DrawingObjects(apCall).Caption = "Перейти в текстовый формат" .DrawingObjects(apCall).Font.ColorIndex = 3 .Range("A38").Resize(a).NumberFormat = "General" End If End With