传入值时出现问题。首先我试图在Userform和模块之间传递它们。我认为它一定是一个问题,所以我把子程序放在同一个用户窗体中。仍然我的价值被传递,但它不回传给第一个子例程。我迷路了发生了什么......在用户窗体中传递值
Private Sub rob_wnioski_but_Click()
Dim wnioski_path As String
wybor_pliku klient_path:="", opcja:=1
MsgBox (klient_path)
End Sub
Private Sub wybor_pliku(ByRef klient_path As String, opcja As Integer)
Start.Hide
With Application.FileDialog(msoFileDialogFilePicker)
.AllowMultiSelect = False 'tylko jeden plik
If .Show = True Then: klient_path = .SelectedItems(1)
End With
Unload Start
End Sub
您是如何调试的?为了确定在'wybor_pliku'例程中'klient_path'变量的值是否被正确赋值,你是否在'If .Show = True'行放置了一个断点? – 2014-12-04 15:06:37
'klient_path'在'wybor_pliku'例程中被赋值,但是在它结束后它应该被传回'rob_wnioski_but_Click',但它不是。我在这里看到类似这样的东西:http://www.cpearson.com/excel/byrefbyval.aspx但我不能在我的例子中重现它。这个发尾时间当然在用户窗体中。 – lowak 2014-12-04 16:46:58
我明白'klient_path'被分配了。现在,请回答我的问题:你做了什么*确定*一个值实际分配给*该变量? – 2014-12-04 16:50:37