Sendkey geht nicht wie gewünscht
02.04.2015 13:00:50
Tobias
ich habe mir ein Tabellenblatt gebastelst das mir über die Zwischenablage Werte von einem ERP System in das Excelfile einfügt. Die Spalten sind enstrechend Formatiert (Text, Zahl usw.)
Hier hat Excel ein Problem. Beim Einfügen von Zwischenablagen, werden die Werte immer als Text behandelt, egal was das Zellformat ist.
Mit einem Aufruf von "F2" und "Return" erkennt Excel dann das Format und bearbeitet richtig weiter. Hier setzt mein Work-Around an. Über die Funktion "Sendkey" simuliere ich dieses.
Rufe ich die Befehlsfolge alleine auf :
For i = 1 To zeilenanzahl
SendKeys "{F2}", True
SendKeys "{ENTER}", True
Next i
so funktioniert das uneingeschränkt. Füge ich diesen Codeschnipsel in ein längeres Makro z. B. so:
... davor steh auch noch zeug
Sheets(tabellenname).Select
Range("I2").Select ' setzte Cursor auf Startposition
' Application.Wait (Now + TimeValue("0:00:01"))
For i = 1 To 10
SendKeys "{F2}", True
SendKeys "{ENTER}", True
SendKeys "{DOWN}", True
Next i
Sheets("Start").Select
Range("h" & 8 + 1).Value = letztezeile
.... und weiter geht der Code
dann ruft das Makro aus dem Programmiermodus die Taste F2 (Obejktkatalog) auf. Wie Ihr sehen könnt habe ich auch schon mit einer Pause gearbeitet. Hat aber auch nicht geholfen.Wie kann ich verhindern, dass das dies geschieht? Ich brauch ein Code der auf dem Fenster ausgeführt wird.
Danke für die Hilfe im voraus.