Microsoft Excel

Herbers Excel/VBA-Archiv

"Inhaltsangabe" auf erstem Sheet variabel ?

    Betrifft: "Inhaltsangabe" auf erstem Sheet variabel ? von: Marc
    Geschrieben am: 01.10.2003 16:56:30

    Hallo Experten,

    Ich habe diese Frage heute schon mal gestellt und wurde darauf aufmerksam gemacht, dass ich die Frage selbst aus den offenen Fragen geworfen habe, dadurch dass ich eine Beispieldatei erst danach hochgeladen habe (Danke Hajo !)

    Hier also die gleiche Frage noch mal, nicht um nerven zu wollen, sondern um diejenigen zu erreichen, die evtl. nur nach offenen Beiträgen Ausschau halten.
    Habe in dem anderen Thread auch noch keine Antwort bekommen.

    ich blick's mal wieder nicht und würde mich über Eure Hilfe freuen.

    Ich habe eine Mappe, in der Aufträge verwaltet werden.
    Dazu gibt es ein "Deckblatt" und viele Sheets zu einzelnen Komponenten.
    Auf dem Deckblatt ist eine Übersicht über die einzelnen Komponenten (Name & Gesamtpreis).
    Dazu wird der Blattname und ne feste Zelle (K1) auf jedem Sheet verwendet.

    Die Mustermappe verfügt über mehr als 30 Sheets und je nach Auftrag werden manche Sheets rausgelöscht bzw. manche auch kopiert und wieder eingefügt.

    Ich brauche also ne Lösung, die mir variabel die Sheetnamen untereinander auflistet und dann in den jeweiligen Sheets die Zellen ausliest und das bei jeder Änderung der Sheet-reihenfolge und -anzahl.

    Geht das ?

    Hier findet ihr eine kleine Beispielmappe:
    https://www.herber.de/bbs/user/1227.xls

    Das würde mir so wahnsinnig viel Arbeit ersparen.
    Vielen Dank im Vorraus.
    Grüsse,
    Marc

      


    Betrifft: AW: "Inhaltsangabe" auf erstem Sheet variabel ? von: Ramses
    Geschrieben am: 01.10.2003 17:29:11

    Hallo

    schreib in ein Modul deiner Arbeitsmappe

    Sub Create_Table_of_Contents()
    Dim Main As String, i As Integer
    Main = "Deckblatt"
    Worksheets(Main).Range("A1:B100").Clear
    For i = 1 To Worksheets.Count
    If Worksheets(i).Name <> Main Then
    Worksheets(Main).Cells(Cells(65536, 1).End(xlUp).Row + 1, 1) = Worksheets(i).Name
    Worksheets(Main).Cells(Cells(65536, 1).End(xlUp).Row + 1, 2) = Worksheets(i).Range("K1")
    End If
    Next i
    End Sub


    und in das Klassenmodul deiner Arbeitsmappe

    Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
    Create_Table_of_Contents
    End Sub
    


    Dann wird jedesmal wenn du ein anderes Tabellenblatt auswählst dein Inhaltsverzeichnis aktualisiert.

    Gruss Rainer


      


    Betrifft: Danke, das sieht schon gut aus ! von: Marc
    Geschrieben am: 01.10.2003 17:38:10

    Hallo Rainer,

    das sieht ja prima aus.
    Werde ich gleich morgen früh testen.

    Den Rest der Berechnungen unterhalb des Inhaltsverzeichnisses bekomme ich dann auch noch hin.

    Danke !!!
    Das wird ne richtige Arbeitserleichterung !

    Grüsse,
    Marc


      


    Betrifft: Merci fürs Feedback o.T. von: Ramses
    Geschrieben am: 01.10.2003 19:14:58

    ...


     

    Beiträge aus den Excel-Beispielen zum Thema " "Inhaltsangabe" auf erstem Sheet variabel ?"