vba - 如何从文本框输入填充用户表单列表框/组合框数组/列表?
问题描述
我试图允许用户在文本框中输入数据并将该数据添加到组合框数组中,我怎样才能将其保存到代码中?
我有一些代码可以填充该会话的数据,但在我关闭应用程序后它就消失了。
Private Sub CommandButton1_Click()
If TextBox1.TextLength > 0 Then
UserForm1.ComboBox2.AddItem TextBox1.Value
TextBox1.Value = ""
Else
Exit Sub
End If
End Sub
Private Sub UserForm_Initialize()
With ComboBox2
.AddItem ".020"
.AddItem ".030"
.AddItem ".032"
.AddItem ".040"
End With
End Sub
我需要用户能够在那里输入数据并将其放在组合框中供其他人使用。任何帮助,将不胜感激!甚至可以为我指明正确方向的搜索词。
解决方案
做这样的事情。在您的工作簿中有一张名为“数据”的工作表。当用户使用 commandbutton1 添加内容时,它会转到数据表中的 A 列,并将用户值放在下一个可用行中。
当您加载另一个表单时,它将遍历 A 列并获取所有值并将它们添加到组合框中。
Private Sub CommandButton1_Click()
Dim lastrow As Long: lastrow = Sheets("Data").Cells(Rows.Count, 1).End(xlUp).Row + 1
If TextBox1.TextLength > 0 Then
Sheets("Data").Cells(lastrow, 1).Value = TextBox1.Value
TextBox1.Value = ""
Else
MsgBox "Please enter a value"
Exit Sub
End If
End Sub
Private Sub UserForm_Initialize()
For i = 1 To Sheets("Data").Cells(Rows.Count, 1).End(xlUp).Row
ComboBox2.AddItem Sheets("Data").Cells(i, 1).Value
Next
End Sub
推荐阅读
- oauth-2.0 - oauth2 google 的刷新令牌中的 IO 异常
- google-drive-api - Google Colab:我可以缓存 Google Drive 身份验证吗?
- spring-boot - 如何添加自定义属性spring数据弹性搜索请求
- latex - Latex - 目录中单独页面上的附录
- javascript - 条件 jsx 元素 React native
- ios - 使用 laravel 将 Apple Watch 数据捕获到服务器
- typo3 - 如何在 TYPO3 后端隐藏数据库字段
- azure - Azure AKS - 如何为在来自不同可用区的节点上运行的 Pod 在公共磁盘上挂载卷?
- node.js - 在存储库模式中,存储库中的一种方法具有多种用途,如何实现该方法以获得更好的设计?
- windows - 即使重置防火墙规则后端口仍保持打开状态