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

时间:2015-06-11 09:19:04

标签: excel vba excel-vba loops for-loop

我正在尝试使用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`

有人可以向我解释我是如何做到这一点的吗?

1 个答案:

答案 0 :(得分: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