2016-03-19 6 views
0

Wie kann ich dies mit nur einer SendKeys-Linie arbeiten?Vbs SendKeys zu 1 Zeile

If IsNumeric(nTo) Then 
    wscript.sleep 1000 
    Do Until nTo = -1 
    a.SendKeys (number, " ") 
    number = number + 1 
    nTo = nTo - 1 
    Loop 
End If 

Ich bekomme Fehler auf SendKeys Reihe.

+1

(A) Der Fehler ist, weil die Tastaturbefehle Sie Syntax verwenden ist falsch. Es braucht ein Argument, die zu sendende Zeichenfolge. (B) Ihre Schleife läuft n + 1 mal, ist das, was Sie wollen. (C) Möchten Sie die Nummern an die andere Anwendung oder die Leerzeichen oder beides gesendet werden? (D) Wenn Sie beschreiben, was Sie in dem größeren Skript (von dem dies ein Ausschnitt ist) zu tun versuchen, können wir möglicherweise eine robustere Methode als SendKeys vorschlagen – MikeC

Antwort

0

Da ich das Ziel Ihrer SendKeys nicht weiß, dass ich es nicht testen können, aber so etwas wie dies funktionieren sollte:

s = "" 
Do Until nTo = -1 
    s = s & number & " " 
    number = number + 1 
    nTo = nTo - 1 
Loop 
a.SendKeys s