将UserForm Textbox Value中的更改保存为新的默认值

时间:2015-03-22 21:28:05

标签: excel vba

我有一个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”参考。任何想法都将不胜感激。

1 个答案:

答案 0 :(得分:0)

使用ADO程序库并保存访问数据库中的默认列表,或者您只需创建一个主表列表,您的用户表单将在Excel中编译,并且当用户表单中的值更改时,它会修改列表中的该项目。