我刚开始学习VBA,我现在正在编写第一个GUI代码。所以我应该创建一个userform,用户可以填写许多不同的数据来比较他们的退休选项。我有工作簿中的工作表,我可以从中生成值。但是,我不知道如何参考现有的工作表,以便新用户在userform中输入的随机数据将进行正确的计算,并为用户提供比较表。
任何帮助都会很好!
Sub cancelCommand_Click()
Unload Me
End Sub
Sub previousCmd_Click()
MultiPage1.Value = MultiPage1.Value - 1
UpdateButtons
End Sub
Sub nextCmd_Click()
MultiPage1.Value = MultiPage1.Value + 1
UpdateButtons
End Sub
Sub finishCmd_Click()
Worksheets("Conclusion").Activate
Unload Me
End Sub
答案 0 :(得分:1)
通过调用Command按钮代码中的ThisWorkbook
对象,您可以与工作簿中的数据进行交互。
要以最简单的形式对其进行测试,请执行以下操作:
创建新工作簿
创建新的用户表单
添加文本框
添加按钮
双击按钮,您将自动进入名为" Private Sub CommandButton1_Click()的内容。编码如下。
Private Sub CommandButton1_Click()
ThisWorkbook.Application.ActiveCell.Value = TextBox1.Value
Unload Me
End Sub
移动到工作表上的任何单元格,然后运行用户表单。在文本框中键入一些文本,然后按按钮。无论您输入到文本框中的是什么,都会显示在您所在的单元格中。
您可以尝试的其他变体而不是ThisWorkbook.Application.ActiveCell.Value = TextBox1.Value
行也可能是:
ThisWorkbook.Sheets(1).Range("A2").Value="TextBox1.Value
上面的代码将生成Sheet1!A2 =每次都输入到文本框中的内容。通过范围与Excel单元格通信的底线。有关可以与Range一起使用的所有不同方法和属性,请参阅Range Object (Excel)。