【发布时间】:2015-06-11 09:19:03
【问题描述】:
我正在尝试使用 For 循环手动将工作表上的每个 OptionButton 字体设置为统一大小和类型。 我可以通过写出每个特定按钮的信息来手动完成它们,但我有数百个按钮。 我什至可以通过在此处使用此代码让 VBA 将正确的语法写入测试工作表:
`Private Sub Thisworkbook_Open()
For i = 1 to Worksheets("Core").OLEObjects.Count
If TypeName(Worksheets("Core").OLEObjects(i).Object) = "OptionButton" Then
Worksheets("testsheet").Range("A" & i).Value = Worksheets("Core").OLEObjects(i).Name
End If
Next i
End Sub`
但我不能做的是将下面这段代码的其余部分与上面的代码一起放置一个干净简洁的语句,它将手动将所有 OptionButton 值设置为这些设置:
`With Worksheets("Core").OptionButton1
.Font.Size = 11
.Font.Name = "Calibri"
.Font.Bold = False
End With`
有人可以向我解释我怎样才能完成这项工作吗?
【问题讨论】:
-
将您的 with 更改为 Worksheets("Core").OLEObjects(i) 将其粘贴在 if 语句中并且应该可以工作
-
这也是我之前的想法并尝试过,但我得到一个运行时错误 438:对象不支持此属性或方法