[Excel] Tabellennamen und Zellen auslesen und in Exceltabelle anzeigen

blaus

Grünschnabel
Hey,

ich wende mich an euch, in der Hoffnung, dass ihr mir weiterhelfen könnt.
Ich habe folgendes Problem.
Ich habe eine Exceltabelle mit ca. 60 Tabellenblättern.
Ich möchte nun per VBA die Tabellennamen aller Tabellenblätter und jeweils eine Zelle auslesen und diese auf dem ersten Tabellenblatt untereinandern ausgeben.

Ich habe keine Ahnung wie man in VBA da erledigt. Kann mir jemand helfen.
Hier die Idee zu einem Psydo-Code:

j=0;
for index=1 to 60{

tabellenblatt(0).Cells(1,index) = tabellenblatt(index).CodeName;
tabellenblatt(0).Cells(5,index) = tabellenblatt(index).Cells(5,index);

}

Kann man das prinzipiell so machen? Wie lautet der Code richtig und wie binde ich diesen in die Exceltabelle ein?

gruß
Torsten
 
So könnte es gehen:

Visual Basic:
For a = 2 To Worksheets.Count
    Tabelle1.Cells(a - 1, 1) = Worksheets(a).Name
    Tabelle1.Cells(a - 1, 2) = Worksheets(a).Range("A1")
Next a

Hiermit wird in Tabelle1 ab Tabelle2 (deshalb "For a = 2") zuerst der Name der Tabelle und dann der Inhalt der Zelle "A1" eingetragen.
 
Hey danke für die Superschnelle Hilfe. Das war genau der Denkanstoss, den ich gebraucht habe.
Habe mein Skript entsprechend angepasst.
Nun würde ich gerne noch einen Hyperlink auf jeden tabellennamen der ersten Seite setzen wollen, damit man komfortabel zwischen Blatt 1 und 60 hin und springen kann.
Manuell kann man dies machen. Wenn ich dann aber wieder das Macro ausführe, sind die Links verschwunden.
 
Dafür musst du das Makro um eine Zeile erweitern.

Visual Basic:
For a = 2 To Worksheets.Count
    Tabelle1.Cells(a - 1, 1) = Worksheets(a).Name
    'das erzeugt den Link zu den Tabellen
    Tabelle1.Hyperlinks.Add Anchor:=Tabelle1.Cells(a - 1, 1), SubAddress:="'" & Worksheets(a).Name & "'!A1", Address:="#A1", ScreenTip:="Tabelle öffnen"
   
    Tabelle1.Cells(a - 1, 2) = Worksheets(a).Range("A1")
Next a
 
Hey,

also so einfach kann VBA sein :) Also vielen Lieben Dank für die korrekte Syntax.
Dein Skript erspart mir einige Stunden Arbeit in der Vereinsarbeit. Also fettes LOB :D

Ich bin restlos zufrieden. Den Rest, denn ich benötige bastele ich mir selbst zusammen.

Beste Grüße
Torsten
 
Zurück