VBA:在用户窗体的函数之间传递变量

我正在创建一个vba用户窗体,该窗体完成后,带有窗体详细信息的字符串变量将粘贴到工作簿的另一张表中。

在用户单击addBtn之后,我想将值dStr粘贴到新表中。希望对此有所帮助。我在其他地方读过,您可以将变量设置为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
cy518598 回答:VBA:在用户窗体的函数之间传递变量

将变量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
,

您可以在UserForm项目中使用私有变量(使用私有而不是dim设置Sub外部的声明)

如果该变量需要在其他项目/功能中使用:公共变量或Property

本文链接:https://www.f2er.com/3160938.html

大家都在问