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

Zellensprung nach Enter per VBA (!!!)

Forumthread: Zellensprung nach Enter per VBA (!!!)

Zellensprung nach Enter per VBA (!!!)
07.10.2004 08:53:24
christoph.
Moin.
Habe vor kurzem in einem Beitrag gefragt, wie man den Zeilensprung nsch betätigen der Enter-taste per VBA einstellen kann. Habe den folgenden Tip bekommen:
"Extras/Optionen/Bearbeiten": "Markierung nach dem Drücken der Eingabetaste verschieben" aktitvieren, "Rechts" auswählen.
Damit ist mir aber nicht weitergeholfen, da dies dann nur für die Excelversion auf meinem Rechner gilt. Ich will es aber so machen, das dies generell für mein Programm gültig ist, egal auf welchem Rechner es genutzt wird.
Hat jemand einen Code oder weiß wies geht? der Makrorecorder gibt nix her.
Danke für hilfe
christoph
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellensprung nach Enter per VBA (!!!)
07.10.2004 09:37:54
Harald
Hallo Christoph,
mit nachstehendem Code (in jedes betreffende Blattmodul eingefügt) arbeite ich.
Funktionsweise.
In Zeile 1 passiert nix
In Spalte D, Sprung nach rechts
In Spalte E, Sprung 3 nach rechts
In Spalte H, Sprung 1 nach unten und 4 nach links

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Row = 1 Or Target.Count > 1 Then Exit Sub
If Target.Column = 4 Then Target.Offset(0, 1).Select
If Target.Column = 5 Then Target.Offset(0, 3).Select
If Target.Column = 8 Then Target.Offset(1, -4).Select
End Sub

Mußte halt nur anpassen.
Viel Spass
Harald
Anzeige
Target.Offset ...
07.10.2004 09:48:08
Volker
Hallo Christoph,
folgender Code setzt nach ENTER die Markierung unabhaengig von der Einstellung in den Excel-Optionen den Cursor immer in die Zelle rechts daneben:

Private Sub Worksheet_Change(ByVal Target As Range)
Target.Offset(0, 1).Select
End Sub

Gruss
Volker Croll
www.crolltools.decolor>
Anzeige
Danke, genau das habe ich gesucht! (o.T.)
07.10.2004 10:08:00
christoph
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige

Infobox / Tutorial

Zellensprung nach Enter in Excel anpassen


Schritt-für-Schritt-Anleitung

Um den Zellensprung nach der Eingabetaste in Excel per VBA anzupassen, folge diesen Schritten:

  1. Öffne Excel und gehe zu dem Arbeitsblatt, in dem du den Zellensprung anpassen möchtest.

  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Suche im Projektfenster auf der linken Seite das entsprechende Arbeitsblatt (z.B. "Tabelle1").

  4. Doppelklicke auf das Arbeitsblatt, um das Codefenster zu öffnen.

  5. Füge den folgenden Code in das Codefenster ein:

    Private Sub Worksheet_Change(ByVal Target As Range)
       If Target.Row = 1 Or Target.Count > 1 Then Exit Sub
       If Target.Column = 4 Then Target.Offset(0, 1).Select
       If Target.Column = 5 Then Target.Offset(0, 3).Select
       If Target.Column = 8 Then Target.Offset(1, -4).Select
    End Sub
  6. Passe die Bedingungen im Code nach deinen Bedürfnissen an (z.B. Spalten und Zeilen).

  7. Schließe den VBA-Editor und teste die Eingabetaste in deinem Arbeitsblatt.


Häufige Fehler und Lösungen

  • Fehler: Der Cursor springt nicht wie gewünscht.
    Lösung: Stelle sicher, dass der Code im richtigen Arbeitsblattmodul eingefügt wurde und die Bedingungen korrekt sind.

  • Fehler: Der Code funktioniert nur für das aktuelle Arbeitsblatt.
    Lösung: Um den Code für alle Arbeitsblätter zu verwenden, musst du ihn in jedes Arbeitsblattmodul einfügen oder ein allgemeines Modul erstellen.


Alternative Methoden

Eine alternative Methode, um den Zellensprung anzupassen, ist die Verwendung der Excel-Optionen:

  1. Gehe zu Extras > Optionen.
  2. Wähle den Tab Bearbeiten.
  3. Aktiviere die Option "Markierung nach dem Drücken der Eingabetaste verschieben".
  4. Wähle die gewünschte Richtung (z.B. Rechts oder Unten).

Diese Methode ist jedoch nur für das aktuelle Excel-Dokument gültig.


Praktische Beispiele

  • Beispiel 1: Springe nach der Eingabe in Spalte D direkt zur Spalte E.
  • Beispiel 2: Springe nach der Eingabe in Spalte H eine Zeile nach unten und vier Spalten nach links.

Der folgende VBA-Code zeigt, wie du die Enter-Taste so anpassen kannst, dass der Cursor immer in die Zelle rechts daneben springt:

Private Sub Worksheet_Change(ByVal Target As Range)
    Target.Offset(0, 1).Select
End Sub

Tipps für Profis

  • Experimentiere mit verschiedenen Offset-Werten, um komplexe Sprünge zu erstellen.
  • Nutze den Worksheet_Change-Event, um automatisch Berechnungen oder Formatierungen durchzuführen, wenn du eine Zelle bearbeitest.
  • Denke daran, dass du auch Application.EnableEvents = False verwenden kannst, um rekursive Aufrufe zu vermeiden.

FAQ: Häufige Fragen

1. Wie kann ich den Zellensprung nach Enter in eine bestimmte Zelle anpassen?
Du kannst die Target.Offset-Methode verwenden, um den Cursor nach der Eingabe in eine bestimmte Zelle zu verschieben. Beispiel: Target.Offset(1, 0).Select springt eine Zeile nach unten.

2. Funktioniert der Code in jeder Excel-Version?
Ja, die meisten VBA-Codes sind mit den gängigen Excel-Versionen kompatibel. Stelle sicher, dass du die richtige Umgebung hast, um den Code auszuführen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige