excel - VBA:在用户窗体的函数之间传递变量
问题描述
我正在创建一个 vba 用户表单,在完成表单后,带有表单详细信息的字符串变量将粘贴到工作簿中的另一个工作表中。
dStr
在使用单击 addBtn 后,我想将该值粘贴到新工作表中。将不胜感激任何帮助。我在其他地方读到过,您可以将变量设置为 public,但也不确定如何设置。
Sub UserForm_Initialize()
Dim valueUSD, name, ric, pStr, sitchStr As String
Dim i, lRow As Long
i = 2
ric = Worksheets("Tester").Range("H" & i)
name = Worksheets("Tester").Range("B" & i)
valueUSD = Worksheets("Tester").Range("C" & i)
sitchStr = ""
dStr = ""
pStr = ric & " " & name & " " & valueUSD & " "
Label1.Caption = pStr
TextBox2.Value = ""
If activeCheck.Value = True Then
sitchStr = sitchStr + activeCheck.Caption
ElseIf itwCheck.Value = True Then
sitchStr = sitchStr + itwCheck.Caption
Else
sitchStr = ""
End If
dStr = pStr & vbNewLine & sitchStr & ", " & TextBox2.Value
End Sub
Sub addBtn_Click()
Application.ScreenUpdating = False
Dim copySheet As Worksheet
Dim pasteSheet As Worksheet
Dim myData As DataObject
Dim lastRow As Long
End Sub
解决方案
将变量 public 设置为评论中提到的 Pluatian 。要将其插入所需的工作表中,您可以使用:
set pasteSheet = Application.Worksheets("Name of Paste Sheet") '<- input name of Sheet you want to paste it in
pasteSheet.Range("A1").Value = dstr '<- input cell you want to paste it in in Range
或者代替 Range 属性
pasteSheet.Cells(1, 2) = dstr '<- 1 is the line number and 2 the Column Number, this example refers to Cell B1
推荐阅读
- amazon-web-services - 在 App Sync 的查询结果中过滤子文档
- python - Python数据框:尝试按多列分组时出现问题
- c# - 使用指针添加功能以重置数组内的值
- javascript - 单击锚标记时如何显示和隐藏输入?
- python - 使用 gitpython 查找文件中唯一更改的数量
- windows - 启动时在 Windows10 子系统上启动 Apache
- python - 如何使用 CNN 输出图像?
- laravel - 无法在新的 Laravel 项目中加载公共文件 HTTP ERROR 500
- android - 在自定义视图中添加矩形图像
- django - Django ORM查询多个关键字并使用单个查询重新运行多个对象列表