2017-08-11 17 views
0

私は、次のVBAがありますParamPassTest.vbsでvbaからvbs(VBScript)にパラメータを渡すにはどうすればよいですか?

Sub StartVbs(sVbsPathNmExt) 
Shell "Explorer.exe """ & sVbsPathNmExt & """", 1  
End Sub 

そして、次のVBScriptを:

MsgBox("Hello x")  
WScript.quit 

それは私がVBAからこのようにそれを呼び出すときに "Helloは、X" のメッセージが表示されます。

Sub do_StartVbs() 
    Call StartVbs("Z:\somepath\ParamPassTest.vbs") 
End Sub 

"x"をVBAからVBSに引数として渡すにはどうすればよいですか?

は、私がここに両方の​​方法を試してみましたが、彼らのいずれかのエラーがまたは私のアンチウイルスのすべてを閉鎖する原因: passing argument from vba to vbs

をではなく、私のアンチウイルス規則を緩め、どのように私はからVBSにパラメータを渡すんvba?

+0

ん[この](https://stackoverflow.com/a/2806731/1188513)あなたの質問に答えない? –

+0

それは引数ではなくテキストファイルに書きますか?さて、私はそれだけでもうまくいくと思います。ありがとう! – mountainclimber

+0

あなたはSlaiの回答で回答しました:あなたのアンチウイルスはコードではなく問題です...マクロスプレッドシートをホワイトリストに登録し、VBSファイルをホワイトリストに登録する必要があります。どのAV製品を使用しているのかはわかりませんが、ファイルのハッシュに基づいてホワイトリストを作成する場合は、そのファイルを保存するたびにホワイトリストを作成する必要があります。 –

答えて

2

あなたはVBAでこれを試すことができます。

1.vbsで
Shell "WScript ""C:\path\1.vbs"" 123" 

と、この:

If WScript.Arguments.Count > 0 Then MsgBox WScript.Arguments(0) 
+0

それを試してみてください。私は "働いている"と思うが、私のアンチウイルスは毎回それを脅かす。試してくれてありがとう! +1 – mountainclimber

関連する問題