私は現在、Outlookで電子メールが受信されたことを検出し、送信情報を取得して電子メールの内容をコピーするマクロに取り組んでいます。ここから私はExcelのスプレッドシートの設定を持っているので、ユーザーをリストしているのを見つけたらsendkeysスクリプトを使ってヘルプデスクのシステムにジョブを記録します。複数の変数をExcelマクロからVBS Send Keysに渡すにはどうすればよいですか?
私の問題は、複数の変数をsendkeysスクリプトに渡すことです。アイテムの種類(例えば内部が)私はに対してそれをログに記録しています
strParam1 = AssystID
strParam2 = Sheets("Ext Database").Range("G3").Value
strVBSPath = "C:\Scripts\testsofar.vbs"
Shell ("wscript.exe " & strVBSPath & " " & strParam1 & strParam2)
strParam1
は、データベースとstrParam2
からユーザー名(例えばKIERANL)です。ここで
は、私はExcelのマクロからそれを見逃しています方法です。
私が問題を抱えているのは、SendKeysスクリプトから正しい出力を得ることです。現在私はWshShell.SendKeys Wscript.Arguments(0)
を送信しなければならないと私は信じていますが、複数の値を渡しているときは、上の例のようにそれらを組み合わせています:KIERANLINTERNAL
すべてを1行にします。
私の質問は正確に間違っていますか?私はこのページを見ました: https://technet.microsoft.com/en-us/library/ee692833.aspxと私は私の方法で何が間違っているかを正確に見ることができません。
この記事はどのように関連性がありますか'SendKeys()'について言及していませんか? – Lankymart
しかし、それはWscriptの引数について言及している、私は彼らがSendKeysを使用して同じ方法だろうと思った。私は2つの異なるものと混同していますか? – Kier
'Arguments'はコマンドライン引数としてスクリプトに渡されるものの集合なので、例えば' wscript.exe test.vbs 1、test、 "test 2" 'は' 1'、 test'と 'test 2'です。 'SendKeys()'はキー入力*(キーボードで打たれたようなもの)*をアクティブなウィンドウに送るために使われます。 – Lankymart