Diagrammtitel ändern?
Hallo zusammen,
ich habe das Problem, dass ich in einer Excel-Tabelle hunderte von Diagrammen habe und nun den Titel der Diagramme ändern muss. Die Titel der Diagramme heißen alle gleich. Nun wollte ich die Funktion "Suchen und Ersetzen" benutzen, was aber leider nicht geht. Kann mir jemand sagen, wie ich auf einen Schlag alle Diagramm-Titel ändern kann, ohne jeden einzelnen Titel händisch zu ändern?
Vielen Dank schon mal für eine Antwort!!!
Marco
ich habe das Problem, dass ich in einer Excel-Tabelle hunderte von Diagrammen habe und nun den Titel der Diagramme ändern muss. Die Titel der Diagramme heißen alle gleich. Nun wollte ich die Funktion "Suchen und Ersetzen" benutzen, was aber leider nicht geht. Kann mir jemand sagen, wie ich auf einen Schlag alle Diagramm-Titel ändern kann, ohne jeden einzelnen Titel händisch zu ändern?
Vielen Dank schon mal für eine Antwort!!!
Marco
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 45427
Url: https://administrator.de/contentid/45427
Ausgedruckt am: 14.11.2024 um 15:11 Uhr
8 Kommentare
Neuester Kommentar
Hi,
versuch's mal so:
Psycho
versuch's mal so:
Sub Rename()
Dim i, n, z As Integer
For i = 1 To Sheets.Count
z = Sheets(i).ChartObjects.Count
For n = 1 To z
Sheets(i).ChartObjects(n).Chart.ChartTitle.Text = "Neuer Name"
Next n
Next i
End Sub
Psycho
Hallo Marco!
Da ich Deinem Beitrag nicht entnehmen kann, ob es sich um einzelne Diagrammblätter oder um Diagramme in Tabellen handelt, eine Lösung für Beides:
HTH
bastla
[Edit] @psycho - Dass Du Zeit für sowas hast, konnte ich ja nicht ahnen [/Edit]
Da ich Deinem Beitrag nicht entnehmen kann, ob es sich um einzelne Diagrammblätter oder um Diagramme in Tabellen handelt, eine Lösung für Beides:
Option Explicit
Sub AendereDiagTitel()
Dim Blatt As Object, Diag As Object
'Diagrammblätter
For Each Diag In Charts
Diag.ChartTitle.Text = "Neuer Blatttitel"
Next
'Diagramme in Tabellen
For Each Blatt In Worksheets()
For Each Diag In Blatt.ChartObjects()
Diag.Chart.ChartTitle.Text = "Neuer Titel"
Next
Next
End Sub
HTH
bastla
[Edit] @psycho - Dass Du Zeit für sowas hast, konnte ich ja nicht ahnen [/Edit]
Hallo Marco!
Um den Titel mit einem neuen Anfang zu versehen:
Anmerkung: Sollte passen, hatte aber keine Zeit zum Testen
Grüße
bastla
Um den Titel mit einem neuen Anfang zu versehen:
Option Explicit
Sub AendereDiagTitel()
Const AnfangNeu As String = "<b>2007</b>"
Dim Blatt As Object, Diag As Object, Ab As Integer
Ab = Len(AnfangNeu) + 1
'Diagrammblätter
For Each Diag In Charts
Diag.ChartTitle.Text = AnfangNeu & Mid(Diag.ChartTitle.Text, Ab)
Next
'Diagramme in Tabellen
For Each Blatt In Worksheets()
For Each Diag In Blatt.ChartObjects()
Diag.Chart.ChartTitle.Text = AnfangNeu & Mid(Diag.Chart.ChartTitle.Text, Ab)
Next
Next
End Sub
Grüße
bastla
Moin,
oder mit Replace:
@bastla: Es ist definitiv noch zu früh für ein Schloss!
Psycho
oder mit Replace:
...
Dim txt As String
txt = Sheets(i).ChartObjects(n).Chart.ChartTitle.Text
Replace(txt, "2006", "2007")
Sheets(i).ChartObjects(n).Chart.ChartTitle.Text = txt
...
@bastla: Es ist definitiv noch zu früh für ein Schloss!
Psycho