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

Position einer Tabelle bestimmen

Forumthread: Position einer Tabelle bestimmen

Position einer Tabelle bestimmen
Peter
Guten Tag
Gibt es eine Möglichkeit, mit VBA die Position x-te sichtbare Tabelle von links, resp. x-te sichtbare Tabelle von rechts gezählt zu bestimmen?
Am besten mit einer User definierten Funktion, die dann in einem Tabellenblatt verwendet werden kann (für die Tabelle "abc" z.B. =posLi("abc") resp. posRe("abc")
Danke für jeden Hinweis.
Gruss, Peter
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Beispieldatei
07.01.2010 16:07:38
Daniel
Hi
könntest du mal eine Beispieldatei hochladen mit den Tabellen und wie das Ergebnis aussehen soll?
Das würde die Problemlösung etwas vereinfachen.
Gruß, Daniel
AW: Position einer Tabelle bestimmen
07.01.2010 16:13:02
Rudi
Hallo,
sowas?
Function PosLi(sTab As String) As Integer
Dim i As Integer
For i = 1 To Sheets.Count
PosLi = PosLi - Sheets(i).Visible
If Sheets(i).Name = sTab Then Exit Function
Next
End Function

Function PosRe(sTab As String) As Integer
Dim i As Integer
For i = Sheets.Count To 1 Step -1
PosRe = PosRe - Sheets(i).Visible
If Sheets(i).Name = sTab Then Exit Function
Next
End Function

Gruß
Rudi
Anzeige
AW: Position einer Tabelle bestimmen
07.01.2010 16:15:54
Peter
Hallo Rudi
Haargenau!
Vielen Dank
Gruss, Peter
AW: Position einer Tabelle bestimmen
07.01.2010 17:05:43
Peter
Hallo
Ich habe noch eine Anschlussfrage:
Wie muss der Code verändert werden, wenn die Position bestimmt werden soll, ohne Berücksichtigung ob Sheets ausgeblendet sind oder nicht?
Gruss, Peter
dann ists einfacher
07.01.2010 17:35:13
Rudi
Hallo,
Function PosLi(sTab As String) As Integer
PosLi = Sheets(sTab).Index
End Function

Function PosRe(sTab As String) As Integer
PosRe = Sheets.Count - Sheets(sTab).Index + 1
End Function

Gruß
Rudi
Anzeige
AW: dann ists einfacher
07.01.2010 18:22:05
Peter
Hallo Rudi
Vielen Dank
Peter
;
Anzeige
Anzeige

Infobox / Tutorial

Position einer Tabelle bestimmen in Excel


Schritt-für-Schritt-Anleitung

  1. Öffne Excel und gehe zu dem Arbeitsblatt, in dem Du die Position der Tabelle bestimmen möchtest.
  2. Öffne den VBA-Editor mit ALT + F11.
  3. Füge einen neuen Modul hinzu: Klicke mit der rechten Maustaste auf „VBAProject (DeinDateiname)“ > Einfügen > Modul.
  4. Kopiere und füge den folgenden Code ein:
Function PosLi(sTab As String) As Integer
    Dim i As Integer
    For i = 1 To Sheets.Count
        PosLi = PosLi - Sheets(i).Visible
        If Sheets(i).Name = sTab Then Exit Function
    Next
End Function

Function PosRe(sTab As String) As Integer
    Dim i As Integer
    For i = Sheets.Count To 1 Step -1
        PosRe = PosRe - Sheets(i).Visible
        If Sheets(i).Name = sTab Then Exit Function
    Next
End Function
  1. Schließe den VBA-Editor und gehe zurück zu Excel.
  2. Verwende die Funktionen in einer Zelle, z.B. =PosLi("abc") für die Position von links oder =PosRe("abc") für die Position von rechts.

Häufige Fehler und Lösungen

  • Fehler: Funktion gibt einen Fehler zurück

    • Lösung: Stelle sicher, dass der Tabellenname korrekt eingegeben wurde. Prüfe, ob die Tabelle existiert.
  • Fehler: Unsichtbare Tabellen werden nicht berücksichtigt

    • Lösung: Wenn Du die Position ohne Berücksichtigung der Sichtbarkeit bestimmen möchtest, verwende den folgenden Code:
Function PosLi(sTab As String) As Integer
    PosLi = Sheets(sTab).Index
End Function

Function PosRe(sTab As String) As Integer
    PosRe = Sheets.Count - Sheets(sTab).Index + 1
End Function

Alternative Methoden

Wenn Du keine VBA-Programmierung nutzen möchtest, kannst Du die Position der Tabellen manuell ermitteln, indem Du die Registerkarten in Excel zählst. Eine andere Möglichkeit ist, das Tabellenblatt zu duplizieren, um die Position zu überprüfen.


Praktische Beispiele

Hier sind einige Beispiele, wie Du die Funktionen nutzen kannst:

  • Um die Position der Tabelle „Monate“ von links zu bestimmen, benutze:

    =PosLi("Monate")
  • Um die Position der gleichen Tabelle von rechts zu bestimmen, benutze:

    =PosRe("Monate")

Diese Funktionen sind besonders nützlich, wenn Du mit vielen Tabellen arbeitest und schnell die Position einer bestimmten Tabelle herausfinden möchtest.


Tipps für Profis

  • Fehlerbehandlung: Du kannst eine Fehlerbehandlung in Deine VBA-Funktion einbauen, um unerwartete Fehler zu vermeiden.
  • Dokumentation: Halte Deine VBA-Funktionen dokumentiert, damit Du und andere Benutzer sie leicht verstehen und verwenden können.
  • Optimierung: Teste die Performance der Funktionen in großen Arbeitsmappen, um sicherzustellen, dass sie schnell und effizient arbeiten.

FAQ: Häufige Fragen

1. Frage
Wie kann ich die Funktionen in einer anderen Excel-Version verwenden?
Antwort: Die VBA-Funktionen sind in den meisten Excel-Versionen ab 2007 verfügbar. Stelle sicher, dass Makros in Deinen Excel-Einstellungen aktiviert sind.

2. Frage
Kann ich die Funktionen auch in einer Tabelle verwenden, die geschützt ist?
Antwort: Nein, Du musst den Blattschutz aufheben, um die Funktionen zu verwenden. Schütze das Blatt danach wieder, wenn Du fertig bist.

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