Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
620to624
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
620to624
620to624
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Tabellenblätter zählen

Tabellenblätter zählen
14.06.2005 16:17:48
Pit
Hallo!
Ich würde gerne alle bereits vorhandenen Tabellenblätter mit dem Wort "Diagramm" im Namen, zählen und mein neues Diagramm in der Nummerierung hinten anstellen.
Wie schaffe ich das?

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tabellenblätter zählen
14.06.2005 17:19:53
IngGi
Hallo Pit,
Excel nummeriert neue Diagrammblätter automatisch durch. Ich nehme daher an, dass du deine Diagramme in Tabellenblätter eingebettet hast und jetzt das Tabellenblatt umbenennen willst. In diesem Fall geht das nur mit VBA. Das Blatt mit dem neuen Diagramm darf selbst aktuell nicht das Wort Diagramm im Namen haben. Aktiviere dieses Blatt und starte folgendes Makro.
Das Makro in ein neues benutzerdefiniertes Modul einfügen (Mit Alt+F11 in den Makro-Editor, über Einfügen-Modul neues Modul einfügen und Makro in das große Fenster rechts kopieren):

Sub Diagramm()
Dim sh As Object, iNum As Integer
For Each sh In ThisWorkbook.Sheets
If sh.Name Like "*Diagramm*" Or sh.Name Like "*diagramm*" Then iNum = iNum + 1
Next sh
ActiveSheet.Name = "Diagramm " & iNum + 1
End Sub

Gruß Ingolf
Anzeige
AW: Tabellenblätter zählen
14.06.2005 17:34:09
Pit
Habe die Diagramme nicht als Tabellenblätter deklariert, sondern als Charts. Und wenn man bei dir Sheets durch Charts ersetzt, dann funktionierts.
Noch etwas weiterführend: Was passiert, wenn die Nummerierung diskontinuierlich ist? Also zB wurde mal zwischendurch ein Diagramm gelöscht. Wie kommt man damit zurecht?
AW: Tabellenblätter zählen
14.06.2005 18:15:04
IngGi
Hallo Pit,
dann gehts mit Durchzählen natürlich nicht, sondern man muß aus allen Namen mit "Diagramm" drin die Nummer isolieren und sich die größte merken.

Sub Diagramm()
Dim sh As Object, iNum As Integer, i As Integer
Dim hZahl As String
For Each sh In ThisWorkbook.Charts
If sh.Name Like "*Diagramm*" Or sh.Name Like "*diagramm*" Then
For i = 1 To Len(sh.Name)
If Asc(Mid(sh.Name, i, 1)) >= 47 And Asc(Mid(sh.Name, i, 1)) <= 58 Then
hZahl = hZahl & Mid(sh.Name, i, 1)
ElseIf hZahl <> "" Then
Exit For
End If
Next i
If hZahl <> "" Then
If Val(hZahl) > iNum Then iNum = Val(hZahl)
End If
hZahl = ""
End If
Next sh
ActiveSheet.Name = "Diagramm " & iNum + 1
End Sub

Gruss Ingolf
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige