【问题标题】:How do you programmatically create a new checkbox on an existing userform using a command button in VBA?如何使用 VBA 中的命令按钮以编程方式在现有用户窗体上创建新复选框?
【发布时间】:2017-08-01 00:07:10
【问题描述】:

我试过了`

Set chkBox = UserForm1.Controls.Add("Forms.Checkbox.i", "Checkbox" & i) '.Object.Caption = Range("D3").Value 我什至尝试过

With ActiveSheet.OLEObjects.Add(ClassType:="Forms.CheckBox.1", _
    Left:=51.75, Top:=183, Width:=120, Height:=19.5)
    .Name = "NewCheckBox"
    .Object.Caption = Range("D3").Value

但这给了我一个复选框,但不是在我创建的用户表单上,而是在我所在的活动表上。

任何建议

【问题讨论】:

  • 对于第二段代码,看起来是因为您使用ActiveSheet 限定了Add 方法。如果将ActiveSheet 更改为UserForm1 会怎样?此外,对于第一部分,它应该是“Forms.Checkbox.1”。 i 设置在哪里?
  • 在你的第一位应该是Forms.Checkbox.1。这段代码在哪里?
  • 看看here

标签: excel vba


【解决方案1】:

在我写的最原始的表单中,这添加了一个复选框(在 UserForm1 的左上角)

Private Sub CommandButton1_Click()

        Dim chkBox As Control

        Set chkBox = Me.Controls.Add("Forms.CheckBox.1", "checkbox")

End Sub

你会想玩定位等。

【讨论】:

  • 这工作非常感谢你,虽然我必须以编程方式命名它应该没问题
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-12
  • 1970-01-01
  • 1970-01-01
  • 2016-01-21
  • 2013-07-09
  • 2014-06-21
相关资源
最近更新 更多