Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

"F2" mit VBA simulieren

Forumthread: "F2" mit VBA simulieren

"F2" mit VBA simulieren
25.02.2003 08:19:54
Martin

Hallo,

hatte mal vor einiger Zeit ein Makro hier im Forum gefunden, das das Drücken der Taste 'F2' in VBA simuliert.

Hintergrund ist das Problem, dass als Text formatierte Zahlen selbst nach Umformatierung nicht (immer) automatisch als Zahl erkannt werden. Erst durch drücken von 'F2'und Return klappt's.

Nun bin ich erneut in einer Situation, wo ich 'F2' in VBA gebrauchen kann, nur leider funktioniert diese Version hier nicht. Hat jemand einen anderen Vorschlag, wie ich das Erreichen könnte, bitte?

Das Makro lautet:

Sub Editieren()
   With Range("A1:H500")
      .Value = .Value
   End With
End Sub

Gruss,
Martin



Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Problem gelöst..
25.02.2003 08:27:45
Martin

klappt schon, hatte den Range nur falsch angesprochen.

M.

Re: "F2" mit VBA simulieren
25.02.2003 08:54:25
Stefan

Hi,
ganz einfach geht's so:

Range("A1").Activate 'zur gewünschten Zelle gehen
SendKeys "{F2}" 'und die Taste drücken

oder so! Danke. (oT)
25.02.2003 09:08:32
Martin

M.

Anzeige
Re: oder so! Danke. (oT)
25.02.2003 09:56:31
Geo

Hi Martin

Wenn Du aus einer "Textzelle" eine Zahlenzelle machen willst. Geht es auch ohne VBA:
- In einer Zelle 1 reinschreiben und kopieren
- Den Bereich markieren, den du umformartieren willst
- Über rechte Maustaste "Inhalte einfügen", den Vorgang "Multiplizieren" auswählen
- Ferig

Gruss
Geo

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige

Infobox / Tutorial

F2 in Excel mit VBA simulieren


Schritt-für-Schritt-Anleitung

Um die F2-Taste in Excel mit VBA zu simulieren, kannst Du die SendKeys-Anweisung verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke im Menü auf "Einfügen" und wähle "Modul", um ein neues Modul zu erstellen.

  3. Füge den folgenden Code in das Modul ein:

    Sub Editieren()
       Range("A1").Activate ' Aktiviert die gewünschte Zelle
       SendKeys "{F2}" ' Simuliert das Drücken der F2-Taste
       SendKeys "{ENTER}" ' Bestätigt mit Enter
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Führe das Makro aus, indem Du auf ALT + F8 drückst und das Makro "Editieren" auswählst.

Diese Schritte sollten Dir helfen, die Funktionalität von F2 in Excel zu replizieren.


Häufige Fehler und Lösungen

Problem: Das Makro funktioniert nicht, wenn ich F2 drücke.
Lösung: Überprüfe, ob der Range korrekt angesprochen wird. Beispiel: Stelle sicher, dass Range("A1") die richtige Zelle ist.

Problem: SendKeys funktioniert nicht zuverlässig.
Lösung: SendKeys kann manchmal unvorhersehbare Ergebnisse liefern. Teste die Funktionalität in verschiedenen Situationen oder ziehe alternative Methoden in Betracht.


Alternative Methoden

Es gibt auch Möglichkeiten, die F2-Funktion ohne VBA zu nutzen:

  1. Inhalte einfügen: Du kannst eine Zelle mit einer Zahl füllen und diese dann kopieren. Markiere den Bereich, den Du umformatieren möchtest, klicke mit der rechten Maustaste und wähle "Inhalte einfügen". Wähle "Multiplizieren", um Text in Zahlen umzuwandeln.

  2. Formatierung ändern: Manchmal reicht es, die Zellenformatierung zu ändern, um Excel zu überzeugen, dass es sich um Zahlen handelt.


Praktische Beispiele

Hier sind einige Beispiele, wie Du F2 in unterschiedlichen Szenarien verwenden kannst:

  • Zahlen aus Text umwandeln: Wenn Du eine gesamte Spalte voller Zahlen in Textformat hast, kannst Du mit dem oben genannten Makro alle Zellen aktivieren und F2 drücken, um sie in Zahlen zu konvertieren.

  • Mehrere Zellen gleichzeitig: Ändere das Makro so, dass mehrere Zellen bearbeitet werden:

    Sub Editieren()
       Dim cell As Range
       For Each cell In Range("A1:A10")
           cell.Activate
           SendKeys "{F2}"
           SendKeys "{ENTER}"
       Next cell
    End Sub

Tipps für Profis

  • Vermeide SendKeys, wenn möglich: SendKeys kann unzuverlässig sein. Überlege, ob Du die Werte direkt in VBA bearbeiten kannst, statt F2 zu simulieren.

  • Verwende Excel-Formeln: Manchmal sind Excel-Formeln eine bessere Lösung, um Daten zu transformieren.

  • Makros optimieren: Halte Deine Makros so einfach und effizient wie möglich, um die Ausführung zu beschleunigen.


FAQ: Häufige Fragen

1. Warum funktioniert F2 nicht in Excel mit VBA?
Es kann sein, dass das Makro nicht richtig konfiguriert ist oder SendKeys nicht zuverlässig arbeitet. Überprüfe die Zelle, die Du aktivierst.

2. Gibt es eine Alternative zu SendKeys?
Ja, Du kannst direkt die Werte in den Zellen ändern, ohne F2 zu verwenden. Dies ist oft effektiver und stabiler.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige