2015-01-12 2 views
-1

Я хочу объявить переменную за пределами моих 2-х подводных лодок, чтобы оба субмарины могли использовать переменную при ее использовании. Поэтому я попробовал следующее, но получаю ошибку «неправильная внешняя процедура».Объявление переменной вне подставок

Public strForumURL As String 
Var strForumURL = "x:\docs\...\forum.xls" 

sub 1() 
AssetURL = strForumURL 
... 
end sub 

sub 2() 
AssetURL = strForumURL 
... 
end sub 
+2

Вы не можете * назначить * переменную внешних процедур. Вместо этого вы можете использовать константу, как это применимо здесь: 'Const strForumURL As String =" x: \ docs \ ... \ forum.xls "' – Rory

ответ

1

Если strForumURL не изменится, вы можете установить его в качестве переменной в Public Const типа, как это.

Public Const strForumURL As String = "x:\docs\...\forum.xls" 

Sub A1() 
    Dim AssetURL As String 
    AssetURL = strForumURL 
    '... use AssetURL 
End Sub 

Sub A2() 
    Dim AssetURL As String 
    AssetURL = strForumURL 
    '... use AssetURL 
End Sub 

В то время как вы не можете изменить строку в strForumURL, вы можете использовать Replace, чтобы изменить часть его при назначении его значение AssetURL.

AssetURL = Replace(strForumURL, "http://", "https://") 
Смежные вопросы