如何使用Visual Basic创建Excel控件(组合框等)

时间:2014-11-28 11:57:34

标签: vb.net excel

我正在开发一个项目,用于创建由ASP.NET / Visual Basic Web应用程序创建的电子表格并通过电子邮件发送电子邮件。

此电子表格的顶部是一个大单元格,其中包含下拉列表,两个文本框,一些标签和一个复选框。

如何使用Visual Basic创建和组织这些控件?电子表格是物理创建的,我现在可以操作单元格,但我不知道如何专门创建这些控件。

1 个答案:

答案 0 :(得分:1)

如果你想以编程方式创建这些控件,那么这段代码应该让你前进,基本上添加一个控件,定位它并设置你需要的那些属性。

Sub addControls()

    With Sheets("Sheet1")
        .Columns(1).ColumnWidth = 60
        .Rows(1).RowHeight = 150

        'label
        Set addedLbl = .OLEObjects.Add(ClassType:="Forms.Label.1")
            With addedLbl
                .Left = 180
                .Top = 25
                .Width = 90
                .Object.BackColor = &HC0C0FF
                .Object.Caption = "A Coloured Label"
            End With

        'combobox
        Set addedCmbo = .OLEObjects.Add(ClassType:="Forms.Combobox.1")
            With addedCmbo
                .Left = 180
                .Top = 75
                .Width = 90
                .Height = 20
            End With

        'checkbox
        Set addedChkBox = .OLEObjects.Add(ClassType:="Forms.CheckBox.1")
            With addedChkBox
                .Left = 25
                .Top = 25
                .Width = 90
                .Height = 20
                .Object.Caption = "A Checkbox"
                .Object.SpecialEffect = 2
                .Object.Value = False
            End With

        'textbox
        Set addedTextBox = .OLEObjects.Add(ClassType:="Forms.TextBox.1")
            With addedTextBox
                .Left = 25
                .Top = 75
                .Width = 90
                .Height = 50
                .Object.WordWrap = True
                .Object.MultiLine = True
                .Object.SpecialEffect = 1
                .Object.Text = "Some wrapped text in this raised textbox."
            End With

    End With

End Sub

如果要手动添加它们,请选择“开发人员”选项卡,然后在“控件”组中选择“插入”。然后,您可以向工作表添加控件。我使用过ActiveX控件。然后右键单击该控件以列出其属性。

Add Controls