Excel Bearbeitungszeile und VBA

Wenn man im Excel eine Zelle selektiert hat, und gerade sich mit dem Cursor gerade in der Bearbeitungszeile (Formelzeile) befindet, kann man mit VBA nicht mehr auf das Dokument zugriefen.

myExcelApplication.activeCell löst dann einen Fehler aus, der „Wechseln zu“ - Dialog wird aufgerufen.
Anscheinend befindet man sich dann in einem Excel-eigenen Editmodus, den man erst verlassen muss, bevor man auf die Sheet-Cells zugreifen kann.

Kann mir jemand sagen, wie ich mit VBA-Code die Formelzeile verlassen kann?
Ich habe es mit SendKeys „{TAB}“ versucht, damit wird dann einfach die nächste rechte Zelle selektiert.
Das funktioniert allerdings nur, wenn man erst einige Programmzeilen später wieder auf das Excel-Sheet zugreift.
Ein „MsgBox myExcelApplication.activeCell.Row“ als DARAUF FOLGENDE Anweisung funktioniert nicht, da kommt wieder obige Fehlermeldung.
Als wenn Excel einfach ein bißchen Zeit für diese Anwendung brauchen würde.

Man könnte meinen, ein „doEvents“ würde Abhilfe schaffen, dem ist aber nicht so. Mit „doEvents“ funktioniert plötzlich gar nichts mehr.

Welchen Grund hat das?

Danke schon mal an die, die sich damit auskennen und mir weiterhelfen!

hallo ronald,

und wenn du
application.selection = range( etc…

sagst?
damit müsste er einen anderen bereich selektieren…

hilft das?

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Ja, das ginge schon, nur bringt es mir nichts.
Ich muss mich mit der Mouse in eine Zelle stellen, und dann drücke ich einen Button in einer VB-Anwendung. Dann soll ein bestimmter Wert zum Zellentext hinzugefügt werden.
Weil mein VB-Programm aber nicht weiß, wo ich gerade (Cells, Rows) im Excel-Blatt eine Zelle selektiert habe, kann ich auch nicht die Range neu setzen.
ActiveCell funktioniert in diesem Sonderfall ja nicht.

Super oder?

Trotzdem herzlichen Dank!

Hallo Ronald,

jetzt mal nur so aus Interesse: wie startest du denn irgend welchen VBA-Code während du in der Formelzeile bist? Von Excel aus geht das doch gar nicht, oder?

Und von einem anderen Programm: solange Excel beschäftigt ist (das muss nicht mal die Formelzeile sein, klappt auch wenn z.B. ein Userform angezeigt wird), wird VBA lahmgelegt, damit nicht eine Funktion einer anderen in die Parade fährt.

Ich glaube, deine Karten daran was zu ändern sehen schlecht aus. Also ich glaube ausser Sendkeys und warten dürfte es kaum Alternativen geben.

Gruß
Daniel