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

Forumthread: Per VBA in bestimmte Zellen springen

Per VBA in bestimmte Zellen springen
23.12.2015 13:27:14
Norman
Hallo Excel-Pros,
ich benötige mal wieder eure Hilfe.
Ich möchte nach Eingabe in einer Zelle in eine bestimmte Zelle springen, um dort wiederum eine Eingabe vorzunehmen. Z.B. von A1 nach B1. Vor diesem Sprung soll jedoch von einer dritten Zelle der Wert geprüft werden. Wenn in dieser z.B. der Wert "m2" oder "Stk" auftaucht, soll in eine andere Zelle zur Eingabe gesprungen werden. Also als Beispiel: ich nehme in Zelle A1 die Eingabe "xy" vor, dann soll der Zellsprung auf B1 zu einer weiteren Einhabe erfolgen. Wenn in L1 jedoch der Wert "m2" oder "Stk" vorhanden ist, soll der Sprung in D1, statt B1 erfolgen. Ich habe zwar Ansätze, komme jedoch nicht weiter. Ich hoffe ihr könnt mir helfen.
Gruß Norman

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Per VBA in bestimmte Zellen springen
23.12.2015 13:35:13
Hajo_Zi
Hallo Norman,
starte den VBA Editor (Alt+F11), Bild sollte zweigeteilt sein ansonsten Strg+R, Doppelklick auf Deine Datei, Doppelklick auf Deine Tabelle, Code ins rechte Fenster kopieren, VBA Editor schließen.
Das Makro wird automatisch gestartet.
Der Code wirkt nur in dieser Tabelle.
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(False, False) = "A1" Then
If Range("L1") = "m2" Or Range("L1") = "Stk" Then
Range("D1").Select
Else
Range("B1").Select
End If
End If
End Sub

Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Per VBA in bestimmte Zellen springen


Schritt-für-Schritt-Anleitung

Um per VBA in bestimmte Zellen zu springen, folge diesen Schritten:

  1. Öffne den VBA-Editor: Drücke Alt + F11.
  2. Finde das richtige Arbeitsblatt:
    • Im linken Fensterbaum solltest Du Deine Arbeitsmappe sehen. Doppelklicke auf das Arbeitsblatt, in dem Du das Makro verwenden möchtest.
  3. Füge den Code ein:
    • Kopiere den folgenden VBA-Code und füge ihn in das rechte Fenster ein:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address(False, False) = "A1" Then
        If Range("L1") = "m2" Or Range("L1") = "Stk" Then
            Range("D1").Select
        Else
            Range("B1").Select
        End If
    End If
End Sub
  1. Schließe den VBA-Editor: Klicke auf das X oder drücke Alt + Q.
  2. Teste das Makro: Gib einen Wert in die Zelle A1 ein und beobachte, wie Excel automatisch zu der festgelegten Zelle springt.

Häufige Fehler und Lösungen

  • Fehler: Makro wird nicht ausgeführt
    Lösung: Stelle sicher, dass Du in der richtigen Tabelle arbeitest und dass das Makro im richtigen Arbeitsblatt eingegeben wurde.

  • Fehler: Excel springt nicht zur gewünschten Zelle
    Lösung: Überprüfe die Werte in Zelle L1. Das Makro springt nur zu D1, wenn dort "m2" oder "Stk" steht.


Alternative Methoden

Wenn Du nicht mit VBA arbeiten möchtest, gibt es auch die Möglichkeit, Excel-Formeln zu verwenden. Eine einfache Formel könnte so aussehen:

=IF(L1="m2", D1, B1)

Diese Formel kannst Du in eine Zelle einfügen, um anzuzeigen, wohin Du springen möchtest, basierend auf dem Wert in L1. Beachte jedoch, dass diese Methode keinen automatischen Sprung ermöglicht.


Praktische Beispiele

  1. Beispiel 1: Du hast in Zelle A1 eine Eingabe wie "Produkt". Wenn in L1 "Stk" steht, springt Excel zu D1 für weitere Eingaben.

  2. Beispiel 2: Du kannst das gleiche Prinzip für andere Zellen anwenden. Wenn Du z.B. von A2 nach B2 oder D2 springen möchtest, passe den Code entsprechend an:

If Target.Address(False, False) = "A2" Then
    If Range("L2") = "m2" Or Range("L2") = "Stk" Then
        Range("D2").Select
    Else
        Range("B2").Select
    End If
End If

Tipps für Profis

  • Makros automatisieren: Du kannst das Makro so einstellen, dass es beim Öffnen der Datei automatisch ausgeführt wird.
  • Verwendung von Variablen: Erstelle Variablen für Zellenadressen, um den Code leichter anpassbar zu machen.
  • Fehlerbehandlung: Implementiere Fehlerbehandlungsroutinen, um unerwartete Eingaben zu verwalten.

FAQ: Häufige Fragen

1. Wie kann ich den Code für andere Zellen anpassen?
Du kannst die Zelladressen im Code ändern, um den Sprung zu anderen Zellen anzupassen. Ändere einfach die Adressen in den Range-Befehlen.

2. Funktioniert dieser Code in allen Excel-Versionen?
Ja, dieser VBA-Code sollte in allen gängigen Excel-Versionen ab Excel 2007 funktionieren, die VBA unterstützen.

3. Kann ich mehrere Bedingungen für den Sprung hinzufügen?
Ja, Du kannst weitere If-Bedingungen hinzufügen, um verschiedene Zellwerte zu prüfen und entsprechende Sprünge durchzuführen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige