У меня проблема с переданными значениями. Сначала я попытался передать их между Userform и модулем. Я думал, что это была проблема, поэтому я поставил подпрограмму в той же пользовательской форме. Тем не менее мое значение передается, но оно не возвращается к первой подпрограмме. Я теряюсь, что происходит ...Передача значений в 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
Что вы сделали, чтобы отладить это? Вы поставили точку останова на строку 'If .Show = True', чтобы определить, что значение правильно назначено переменной' klient_path' в рамках 'wybor_pliku'? –
'klient_path' назначается в рамках' wybor_pliku', но после его завершения он должен быть возвращен в 'rob_wnioski_but_Click', но это не так. Я видел что-то вроде этого здесь: http://www.cpearson.com/excel/byrefbyval.aspx, но я не могу воспроизвести его в моем примере. Это обычное время, конечно же, в Userform Forms. – lowak
Я понимаю, где назначается 'klient_path'. Теперь, пожалуйста, ответьте на мой вопрос: что вы сделали, чтобы быть уверенным, что значение действительно присваивается * этой переменной? –