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
Office - Word, Excel und Co. 9.753 Themen, 41.597 Beiträge
Hi Marco,
wie das geht, interessierte mich nach Lesen deiner Frage auch, und ich habe das sogar auf die Schnelle hinbekommen (mit Excel-Hilfe).
Damit wir auf gleichem Level reden:
1) Wir reden hier von einem einzigen Workbook.
2) Dieses Workbook hat mehrere Sheets.
3) Auf jedem oder einigen dieser Sheets befinden sich Diagramme.
4) Bei diesen Diagrammen handelt es sich um so genannte Charts, also graphische Abbildungen von Zahlenreihen o.ä..
5) Jeder dieser Charts liegt auf einem Sheet sozusagen als Box bzw. "embedded chart" und hat nicht ein eigenes Sheet.
6) Die verwendete Excel-Version ist 2000.
Unter diesen Vorraussetzungen funktioniert folgende Prozedur:
###################################################
Private Sub ChangeName()
Dim i As Integer, j As Integer, p_NewName As String
p_NewName = InputBox("Enter a new Title for all Charts:", "A massive renaming:")
If p_NewName = "" Then
'User pressed cancel or didn't give a name, but clicked OK
Else
For j = 1 To ActiveWorkbook.Sheets.Count
ActiveWorkbook.Sheets(j).Activate
For i = 1 To ActiveSheet.ChartObjects.Count
ActiveSheet.ChartObjects(i).Chart.ChartTitle.Text = p_NewName
Next i
Next j
End If
End Sub
###################################################
Man öffne im aktiven Workbook den Visual Basic Editor (Alt+F11), suche im Object Explorer das erste Sheet dieses Workbooks und kopiere obige Prozedur hinein. Man plaziere den Mouse Cursor in die Titelzeile dieser Prozuedur und drücke auf Play. Eine Box wird sich öffnen und nach dem neuen Namen fragen.
Lass mich bitte wissen, ob diese Vorgehensweise deinen Vorstellungen entspricht.
HAND
Sylvia
Okey kurz ein paar Sätze zu dir Sylvia (ich schreibe diese mit sarkastischem Unterton):
Falls du mit diesen netten Einführungssätzen voraussetzt, dass sich auch nur irgendjemand jetzt auf deinem Excel-Niveau befindet liegst du FALSCH!!
Habe deinen Beitrag ein paar meiner Kollegen gezeigt und NEIN auch diese haben es nicht verstanden!!
Ich bin mir ziemlich sicher, dass auch der liebe Marco jetzt genau so schlau wie vorhin ist.
Keine Sau versteht dann deine Prozedur !?
Was soll das bedeuten ?? Schon alleine wenn es mit mehrerrerererern ######## anfängt?!!
Liebe Grüße aus Wien (HAND?!)
dallywally
Hallo dallywally,
möglicherweise liegst Du aber auch falsch. Oder kennst Du ALLE Excel-Nutzer auf der Welt persönlich??
Also: Diese Einführungsinformationen dürften einem Excel-Anwender durchaus etwas sagen, möglicherweise also auch dem Marco.
Dein Problem ist eventuell, dass Sylvia einige englische Begriffe benutzt, die im deutschen Excel eben normalerweise auf deutsch zu finden sind:
Workbook = Arbeitsmappe (also die Excel-Datei)
Sheet = Tabelle (Tabellenblatt)
Chart = Diagramm (das hat Sylvia ja schon selber übersetzt)
embedded chart = eingebettetes Diagramm
Keine Sau versteht dann deine Prozedur !?
Das kann schon sein. Wer diese elementaren Excel-Begriffe schon nicht kennt, ist mit dem VBA-Quellcode möglicherweise erst recht überfordert. Den muss man aber auch nicht verstehen, den soll Marco ja nur anwenden. Und wie das gemacht wird, ist genau beschrieben.
Also: Ich habe das gerade mal mit Excel 2003 ausprobiert und es funktioniert hervorragend!
Ein Lob an Sylvia (ohne sarkastischen Unterton)! Ich bin schwer beeindruckt.
Und an dallywally der Rat, mal in die Grundlagen von Excel einzusteigen. Da gibt's 1000e Bücher drüber und auch in Wien sicher den einen oder anderen Kurs zum Thema!
Gruß, mawe2