excel - 重新加载表单时如何保留文本框中的值
问题描述
我有一个非常简单的 vba 宏应用程序,由 2 个文本框和命令按钮组成。这个想法是用户需要在文本框中输入数值,然后单击按钮将其禁用,这样他们就无法更改值。当表单重新加载时,数值会丢失,我必须重新输入另一个值。
我想要的是当表单重新加载时,数值会保留。
Private Sub btnLock_Click()
txtApple.Enabled = False
txtBanana.Enabled = False
End Sub
图片
[
解决方案
您需要记住,本质上,您拥有一个可以使用工作簿本身的数据库。
我的建议是,当用户添加值并单击按钮时,将该值插入到工作表中(您可能需要使用它来保护、隐藏等......或者不这样做),然后从再次打开表单时的工作表。
本质上,您只需将值放在某个地方,当表单重新出现时,您可以再次从中获取它。如果您不喜欢工作表方法,那么总会有一个数据库、工作站上的文件、内存等。
像这样的东西...
Private Sub btnLockBox_Click()
Sheet1.Range("A1") = txtNumber.Text
txtNumber.Enabled = False
End Sub
Private Sub UserForm_Initialize()
txtNumber.Text = Sheet1.Range("A1")
If txtNumber.Text <> "" Then
txtNumber.Enabled = False
End If
End Sub
我希望我已经正确理解了您的要求,并且希望这种方法有所帮助。
推荐阅读
- reactjs - React App,在 React VS Vue 中使用 Font Awesome 品牌图标
- javascript - 在 React 组件中使用 concat 设置状态
- android - FileReader(复合路径)导致找不到文件
- sql - 设计查询以从不同的表中选择计数
- verilog - Verilog 中的有效准备握手
- css - CSS background-clip:来自父元素背景的文本
- reactjs - React Router - 基于身份验证的重定向
- r - 两个 date_times 的中点四舍五入到最接近的小时,保留 hms
- java - Spring Security oAuth 抱怨缺少 JWT 验证器密钥,即使它已定义
- javascript - Javascript不解析通过函数传递的数组