我有一个userform,在文本框中有29个值,用作相当长的公式的参数。我已将当前设置作为文本框中的起始值输入值&文字属性。我希望用户能够使用表单上的“保存”按钮永久更改表单参数作为新启动默认值。网上有一些文章证明了这一点并使用了这些例子。我拼凑了下面的代码。
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':对象变量或未设置块变量”错误消息。调试指向'With .controls(Textbox1)'行作为违规者。我选择了“Microsoft Visual Basic For App Extensibility”参考。任何想法都将不胜感激。
答案 0 :(得分:0)
使用ADO程序库并保存访问数据库中的默认列表,或者您只需创建一个主表列表,您的用户表单将在Excel中编译,并且当用户表单中的值更改时,它会修改列表中的该项目。