2013-03-27 247 views
-1

我有2個函數。我需要將參數從一個傳遞到另一個,並在第二個函數中對其進行評估。對於下面的代碼,我需要 「QA」 在ENV,但其打印爲 「ENV」VBScript:將參數傳遞給函數

strenv = "QA" 
cus_number = getNumber(strenv) 

If (IsNull(cus_number)) Then 
    WScript.Echo "Number is null" 
Else 
WScript.Echo "cus_number : " & cus_number 
End If 



Function getNumber(strenv) 
    wscript.echo "env: " & strenv 
    if strenv = "QA" Then 
    number = "423" 
    elseif strenv ="DEV" Then 
     number= "678" 
    endif 
    getNumber=number 
    End Function 
+0

您發佈的代碼甚至沒有編譯(它會爲無效語法生成「編譯錯誤」),更不用說運行或做任何錯誤。請[編輯]您的問題,以提供一個真實的,運行中的代碼不能正常工作。 – 2013-03-27 20:50:32

+0

@Ken White:我已經更新了代碼 – Jill448 2013-03-27 21:11:24

+1

-1如果你真的試着運行剛剛發佈的代碼,你會發現它仍然會引發編譯錯誤。錯誤消息甚至會告訴你在哪裏以及爲什麼。 – 2013-03-27 21:14:27

回答

0

我看到你的代碼中的至少2個問題:

  1. strenv = QA

    你可能旨在將字符串"QA"分配給變量strenv。然而,沒有雙重qoutes QA被視爲一個變量。由於您沒有初始化它,因此其值爲Empty,然後分配給strenv

  2. 該函數中的條件語法不正確。請檢查documentation

+0

其實我從用戶輸入中獲得QA。但爲了方便,我分配了它。 strenv在函數getNumber之外具有「QA」值。但是我怎麼能把它放在函數裏面呢? – Jill448 2013-03-27 21:24:19

+0

@ sravs448您的函數中的條件* still *具有**語法錯誤**。我甚至向你介紹了相關的文件。請刪除「On Error Resume Next」,你似乎在你的真實代碼中有某處並做你的功課。 – 2013-03-27 21:38:57

+0

我可以照顧條件。我現在更新了它。請讓我知道如何訪問傳遞的參數。 – Jill448 2013-03-27 22:00:52