Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA gehe zu

Forumthread: VBA gehe zu

VBA gehe zu
20.04.2016 10:16:00
Christian
Hi ich habe eine Frage zu einer VBA Programierung:
In der Tabelle Eingabe im Feld "N6" gebe ich einen Text via Formel aus
Ich möchte das er bei Button Klick in Tabelle 2 gesucht wird und mein Course dahin springt.
nochmal anders geschrieben:
on Button Klick nimm "n6" goto Tabelle 2 suche dort in der Spalte E nach "n6" und bring meinen Course dahin.

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA gehe zu
20.04.2016 10:23:42
ChrisL
Hi Christian
On Forums-Click Copy and Paste To Excel Module ;)
Private Sub CommandButton1_Click()
Dim WS1 As Worksheet, WS2 As Worksheet
Set WS1 = Worksheets("Tabelle1")
Set WS2 = Worksheets("Tabelle2")
If WorksheetFunction.CountIf(WS2.Columns(5), WS1.Range("N6")) = 0 Then
MsgBox "nicht vorhanden"
Else
WS2.Activate
WS2.Cells(Application.Match(WS1.Range("N6"), WS2.Columns(5), 0), 5).Select
End If
End Sub

cu
Chris

Anzeige
AW: VBA gehe zu
20.04.2016 11:36:52
Rudi
Hallo,
alternativ:
Private Sub CommandButton1_Click()
Dim r As Range
Set r = Sheets("Tabelle2").Columns(5).Find(what:=Range("N6"), lookat:=xlWhole)
If Not r Is Nothing Then
Application.Goto r, True
Else
MsgBox "Nicht vorhanden"
End If
End Sub
Gruß
Rudi
Anzeige
;
Anzeige

Infobox / Tutorial

VBA: Gehe zu einer Zelle in Excel


Schritt-für-Schritt-Anleitung

  1. Öffne dein Excel-Dokument und gehe zu der Tabelle, in der sich der Button befindet.
  2. Füge einen Button hinzu: Gehe zu "Entwicklertools" und wähle "Einfügen", um einen Button (ActiveX-Steuerelement) zu erstellen.
  3. Klicke mit der rechten Maustaste auf den Button und wähle "Code anzeigen".
  4. Füge den folgenden VBA-Code ein:
Private Sub CommandButton1_Click()
    Dim WS1 As Worksheet, WS2 As Worksheet
    Set WS1 = Worksheets("Tabelle1")
    Set WS2 = Worksheets("Tabelle2")

    If WorksheetFunction.CountIf(WS2.Columns(5), WS1.Range("N6")) = 0 Then
        MsgBox "nicht vorhanden"
    Else
        WS2.Activate
        WS2.Cells(Application.Match(WS1.Range("N6"), WS2.Columns(5), 0), 5).Select
    End If
End Sub
  1. Schließe den VBA-Editor und teste den Button, indem du auf ihn klickst. Der Code sucht den Wert in Zelle N6 und springt zu der entsprechenden Zelle in Tabelle 2.

Häufige Fehler und Lösungen

  • Fehler: "nicht vorhanden" wird angezeigt: Dies geschieht, wenn der Wert in N6 nicht in der Spalte E von Tabelle 2 gefunden wird. Überprüfe den Inhalt von N6 und stelle sicher, dass er in der Zieltabelle vorhanden ist.

  • Code funktioniert nicht: Stelle sicher, dass die "Entwicklertools" aktiviert sind und dass der Button korrekt mit dem VBA-Code verknüpft ist.


Alternative Methoden

Eine alternative Methode, um zu einer Zelle in Excel zu springen, ist die Verwendung der Find-Methode. Hier ist ein Beispielcode:

Private Sub CommandButton1_Click()
    Dim r As Range
    Set r = Sheets("Tabelle2").Columns(5).Find(what:=Range("N6"), lookat:=xlWhole)

    If Not r Is Nothing Then
        Application.Goto r, True
    Else
        MsgBox "Nicht vorhanden"
    End If
End Sub

Diese Methode verwendet die Find-Funktion, um den Wert in N6 zu suchen und springt direkt zu dieser Zelle, falls sie gefunden wird.


Praktische Beispiele

Angenommen, du hast in Tabelle 1 in Zelle N6 den Wert "Apfel" und möchtest diesen in Tabelle 2 in der Spalte E suchen. Wenn sich der Wert in Zelle E10 befindet, wirst du bei einem Klick auf den Button automatisch zu dieser Zelle weitergeleitet.


Tipps für Profis

  • Variablen benennen: Verwende aussagekräftige Variablennamen, um den Code besser lesbar zu machen.
  • Fehlerbehandlung: Implementiere eine Fehlerbehandlung, um unerwartete Fehler abzufangen und dem Benutzer hilfreiche Hinweise zu geben.
  • Testen: Teste deinen Code regelmäßig während der Entwicklung, um sicherzustellen, dass alles wie erwartet funktioniert.

FAQ: Häufige Fragen

1. Wie kann ich das Skript für andere Zellen anpassen?
Ändere einfach den Bereich von N6 auf die gewünschte Zelle, z.B. A1.

2. Funktioniert dies in allen Excel-Versionen?
Ja, der VBA-Code sollte in den meisten modernen Excel-Versionen funktionieren, solange VBA unterstützt wird.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige