Tabellenblattname in Zelle
#1
Guten Tag Leute,

da mein Problem leider nicht gelöst werden konnte. Werde ich es mal schrittweise versuchen. Gibt es in Excel die Möglichkeit per Makro in Zelle A1 den Tabellenblattnamen von dem linken/rechten Tabellenblatt auszugeben?
Index?
Top
#2
Was ist ein "linkes" oder "rechtes" Tabellenblatt. Sind die politisch gesinnt?
Meinst du womöglich das erste und letzte Tabellenblatt?

Code:
Cells(1, 1) = Sheets(1).Name
Cells(2, 1) = Sheets(Sheets.Count).Name
Schöne Grüße
Berni
Top
#3
Danke dir schonmal. Politik lassen wir mal raus :)
ich mein das Tabellenblatt links oder rechts von dem aktuell ausgewählten. 

Ein Beispiel: In A1 der Tabelle2 sollte der Tabellenblattname "Tabelle1" stehen in A2 sollte "Tabelle3" stehen.

Bitte nicht über letzte und erste Tabellenblatt, da sehr viele Tabellenblätter eingefügt werden.


Angehängte Dateien Thumbnail(s)
   
Top
#4
Dann solltest du deine Beschreibung künftig auch so stellen, dass sie ein Außenstehender versteht :)

Code:
Cells(1, 1) = ActiveSheet.Index - 1

Die Lösung für das Blatt rechts überlasse ich jetzt mal deiner Fantasie... https://www.youtube.com/watch?v=fJFIydNZnfk
Schöne Grüße
Berni
[-] Folgende(r) 1 Nutzer sagt Danke an MisterBurns für diesen Beitrag:
  • elamigo
Top
#5
Ja tut mir leid, ist manchmal etwas schwer, wenn man sich selber mit einem Thema so beschäftigt.
Okay soweit so gut, aber ich hätte gerne den Tabellenblattnamen, nicht "Stelle" an der das Tabellenblatt ist.
Top
#6
Hallo,
eigentlich benötigst du dafür kein Makro, obwohl ich sie lieben gelernt habe. Schau dir mal meine Beispieltabelle an ...
Lg
Marcus


Angehängte Dateien
.xls   Tabellenname in Zelle A1.xls (Größe: 21 KB / Downloads: 8)

Wissen ist Macht - es ist aber nicht schlimm nicht alles zu wissen.
Man muss nicht alles wissen - man muss nur wissen wo es steht, oder wo man Hilfe bekommt.
[-] Folgende(r) 1 Nutzer sagt Danke an marose67 für diesen Beitrag:
  • elamigo
Top
#7
Wahnsinn danke!
Zum Verständnis, kannst du mir erklären wieso er in A2 und A3 genau dies ausgibt? Ist wirklich verblüffend.

Oh man habe nicht richtig geschaut!!! danke! alles ist klar !
Top
#8
Hallo

ganz korrekt und sachlich könnte die Lösung so wie unten im Code aussehen:  
Zu beachten ist das man kein Blatt Index < 1 oder Index > Anzahl aller Tabellen angeben kann. Das ergibt  Laufzeitfehler! Deshalb die IF Then Prüfung!

mfg  Gast 123

Code:
Sub Tabellen_Name_ermitteln()
Dim Indx As Integer, Zahl As Integer
Indx = ActiveSheet.Index
Zahl = ThisWorkbook.Worksheets.Count

'nur Linkes oder Rechts Blatt dann so!
If Indx > 1 Then ActiveSheet.Range("A1").Value = Worksheets(Indx - 1).Name
If Indx < Zahl Then ActiveSheet.Range("A1").Value = Worksheets(Indx + 1).Name

'Linkes und Rechts Blatt gemeinsam dann so!
If Indx > 1 And Indx < Zahl Then
  ActiveSheet.Range("A1").Value = Worksheets(Indx - 1).Name & " / " & Worksheets(Indx + 1).Name
End If
End Sub
[-] Folgende(r) 1 Nutzer sagt Danke an Gast 123 für diesen Beitrag:
  • elamigo
Top
#9
Hallo,
schön dass ich dir helfen konnte. Für die Vollständigkeit. In jedem Tabellenblatt steht die selbe Formel. Diese könnte man ausblenden, in dem man die Schriftfarbe der Zelle anpasst Wink, Der Rest wird einfach mit dem Verweis auf die Zelle, in das Tabellenblatt gemacht.

Hättest Du mich jetzt gefragt, ob ich Dir die Formel erklären könnte ... Kann ich nicht. Ich habe hier nur einiges an Daten aus meiner Vergangenheit rumfliegen.

Wünsche Dir einen schönen Tag.
Marcus

Wissen ist Macht - es ist aber nicht schlimm nicht alles zu wissen.
Man muss nicht alles wissen - man muss nur wissen wo es steht, oder wo man Hilfe bekommt.
[-] Folgende(r) 1 Nutzer sagt Danke an marose67 für diesen Beitrag:
  • elamigo
Top
#10
Gast123 ganz ganz STARKE Vorstellung, genau das habe ich gesucht!
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste