如何使用 VBA For Loop 设置 OptionButton 字体?

问题描述 投票:0回答:2

我正在尝试使用 For 循环手动将工作表上的每个选项按钮的字体设置为统一的大小和类型。 我可以通过写出每个特定按钮的信息来手动完成这些操作,但我有数百个按钮。 我什至可以使用此处的代码让 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`

有人可以向我解释如何才能完成这项工作吗?

vba excel loops for-loop
2个回答
0
投票

其实你的问题已经有了答案,你所要做的就是将你的属性放到正确的位置,如下:

    For i = 1 To Worksheets("Core").OLEObjects.Count
        If TypeName(Worksheets("Core").OLEObjects(i).Object) = "OptionButton" Then

            Worksheets("Core").OLEObjects(i).Object.FontSize = 5
            ' Remaining code goes here.
        End If
    Next i

0
投票

试试这个: .Font.Bold = 0 '为假(1为真)

© www.soinside.com 2019 - 2024. All rights reserved.