Здравствуйте. Подскажите, плиз. На Листе имеется некоторое кол-во кнопок Элементов управления, которое может измениться - добавляются новые, удаляются старые. Как можно макросом массово изменять размер шрифта на всех кнопках сразу, не прописывая каждый раз изменения в макрос, который это делает. Пример файла прилагаю.
Здравствуйте. Подскажите, плиз. На Листе имеется некоторое кол-во кнопок Элементов управления, которое может измениться - добавляются новые, удаляются старые. Как можно макросом массово изменять размер шрифта на всех кнопках сразу, не прописывая каждый раз изменения в макрос, который это делает. Пример файла прилагаю.Exo
Sub tt() Set c_ = ActiveSheet.Shapes For i = 1 To c_.Count If Left(c_(i).AlternativeText, 3) = "Кно" Then With c_(i).DrawingObject.Font .Size = .Size + 1 End With End If Next i End Sub
[/vba]
Так нужно? [vba]
Код
Sub tt() Set c_ = ActiveSheet.Shapes For i = 1 To c_.Count If Left(c_(i).AlternativeText, 3) = "Кно" Then With c_(i).DrawingObject.Font .Size = .Size + 1 End With End If Next i End Sub
Не нужно. Это я не совсем грамотно написал. Вот так попробуйте [vba]
Код
Sub Pl() Set c_ = ActiveSheet.Shapes For i = 1 To c_.Count If c_(i).DrawingObject.ShapeRange.Type = 8 Then With c_(i).DrawingObject.Font .Size = .Size + 1 End With End If Next i End Sub
Не нужно. Это я не совсем грамотно написал. Вот так попробуйте [vba]
Код
Sub Pl() Set c_ = ActiveSheet.Shapes For i = 1 To c_.Count If c_(i).DrawingObject.ShapeRange.Type = 8 Then With c_(i).DrawingObject.Font .Size = .Size + 1 End With End If Next i End Sub
Да, сейчас просто супер! Спасибо огромное! так как файлом пользуются люди с разными мониторами и не у всех нормально отображается! Плюс в репутацию!
Да, сейчас просто супер! Спасибо огромное! так как файлом пользуются люди с разными мониторами и не у всех нормально отображается! Плюс в репутацию!Exo
А что такое вестибюль? А что такое широкополосный интернет?
Dim btn As Button Sub Уменьшить_размер_шрифта_на_кнопках() For Each btn In ActiveSheet.Buttons With btn.Font .Size = .Size - 1 End With Next End Sub Sub Увеличить_размер_шрифта_на_кнопках() For Each btn In ActiveSheet.Buttons With btn.Font .Size = .Size + 1 End With Next End Sub
[/vba]
И так тоже можно [vba]
Код
Dim btn As Button Sub Уменьшить_размер_шрифта_на_кнопках() For Each btn In ActiveSheet.Buttons With btn.Font .Size = .Size - 1 End With Next End Sub Sub Увеличить_размер_шрифта_на_кнопках() For Each btn In ActiveSheet.Buttons With btn.Font .Size = .Size + 1 End With Next End Sub