我有一个用户表单,它在文本框中有29个值,用作一个相当长的公式的参数。我已经在textbox Value & text属性中输入了当前设置作为起始值。我希望用户能够使用表单上的“保存”按钮永久更改表单参数作为新的启动默认值。web上有一些文章演示了这一点,并使用了这些示例。我拼凑了下面的代码。
Private Sub ToggleButton1_Click()
'
'----------- Save Button -------------------------------------
'
Dim VBP As VBIDE.VBProject
Dim VBC As VBIDE.VBComponent
Dim VBD As UserForm
Set VBP = ThisWorkbook.VBProject
Set VBC = VBP.VBComponents("Calculation_Parameters")
Set VBD = VBC.Designer
With VBD
With .Controls("Textbox1")
.Value = 111
.BackColor = vbRed
End With
End With
End Sub我已经尝试了至少20种不同的版本,但还没有成功。使用此代码时,我得到“运行时错误'91':Object Variable or With Block Variable not set”错误消息。Debug将“With.controls(Textbox1”)“行指向违规行为。我选择了"Microsoft Visual Basic For App Extensibility”参考。任何想法都将不胜感激。
发布于 2015-03-26 23:43:17
使用ADO程序库并在access数据库中保存您的默认列表,或者您可以简单地创建一个主列表,您的用户表单将根据该列表在excel中编译,当用户表单中的值发生更改时,它会修改列表中的该项。
https://stackoverflow.com/questions/29200070
复制相似问题