Excel 2007 benennt "Diagramm" in "Chart" um, daher Verknüpfung zu Word kaputt

Wilhelm14

Fleet Admiral
Registriert
Juli 2008
Beiträge
23.572
Hallo!

Wir sind mit mehreren Leuten am Rätseln. Phänomen: Man erstellt mit Excel 2003 ein Diagramm, das heißt dann auch "Diagramm". Öffnet man diese xls-Datei mit Excel 2007 heißt das Diagramm auf einmal "Chart". Sind nun in einem Word-Dokument Verknüpfungen zu "Diagramm" findet Word natürlich nichts, da es jetzt "Chart" in 2007 heißt.

Einzeln umbennen geht in 2007 über: Diagramm anklicken - Reiter Layout - ganz rechts Eigenschaften - Diagrammname. Aber es kann doch nicht sein, dass Office 2007 Nutzer ein mit 2003 erstelltes Dokument nicht korrekt angucken können.

Kurios ist weiterhin, dass man beim Öffnen mit 2007, während unten der Ladebalken läuft, kurz "Diagramm" korrekt wie in 2003 zu sehen ist. Ist das Dokument fertig geladen, ploppt auf einmal statt "Diagramm" "Chart" auf. Da muss doch 2007 alleine schon beim Lesen des 2003-xls etwas verdrehen.

Weiter seltsam ist, erstellt man in 2007 ein neues Diagramm, heißt es "Diagramm" und nicht "Chart". Es ist also nicht so, dass 2007 Diagramme pauschal "Chart" nennt.

Könnte jemand das Phänomen nachstellen und vielleicht eine Lösung liefern? Dass das noch keinem aufgefallen ist. :freak:

PS: Hoffentlich wird das jetzt nichts Peinliches. ;)
 
Hallo Wilhelm14

wir haben das gleiche Problem und sind extrem erleichtert, dass es noch andere User mit dem Problem gibt.

Auch wir sehen kurzfristig den "alten, richten" Diagrammnamen "Diagramm 1".

Sobald Excel07 dann mit dem Laden der Excel2003-Datei fertig ist, heißt das Diagramm "Chart 1" - und alle schönen Verknüpfungen zu hunderten von Word-Dokumenten und Powerpoint-Dateien funktionieren nicht mehr.

Ein manuelles oder VBA-gesteuertes Umbenennen kann hier ja nicht die Lösung sein!

OK - wenn jemand ein gutes VBA-Skript hat zum Umbenennen aller Diagramme in sämtlichen Arbeitsmappen hat, wären wir auch darüber sehr dankbar. :-)

Falls ihr Lösungen findet, bitte bitte postet sie hier!

Danke und Grüße!
 
Zuletzt bearbeitet: (Ergänzung)
Da noch keine Vorschläge kommen, hänge ich mal eine Beispiel-xls an. Mit 2003 geöffnet heißt das Diagramm "Diagramm 1" mit 2007 "Chart 1". Öffnet nun einer ein Word-Dokument, wo "Diagramm 1" verknüpft ist und hat Excel 2007, geht die Verknüpfung nicht, weil die in Excel 2007 "Chart 1" heißt. (Wie gehabt heißen aber neu erstellte Diagramme in Excel 2007 auch "Diagramm" und nicht "Chart".)

Vielleicht kann jemand das Phänomen einfach bestätigen und nachstellen. Nicht, dass hier einfach nur ein Denkfehler ist.

Edit: Die xls musste ich zippen. Avira 9 aktuell meldet "Kein Fund!"
 

Anhänge

  • 0815Test.zip
    2,1 KB · Aufrufe: 296
Zuletzt bearbeitet:
Hier mal ein Makro, dass jedes Chart in Diagramm umbenennt; Nummern im Namen bleiben davon unberührt.
Code:
Option Explicit

Sub chart_umbenennen()

Dim iAnzahl As Integer
Dim sName_alt As String
Dim sName_neu As String

sName_alt = "Chart"
sName_neu = "Diagramm"

With ActiveSheet
  If .ChartObjects.Count <> 0 Then
    For iAnzahl = .ChartObjects.Count To 1 Step -1
      .ChartObjects(iAnzahl).Name = Replace(.ChartObjects(iAnzahl).Name, sName_alt, sName_neu)
    Next iAnzahl
  End If
End With

End Sub
oder wenn es mehrere Tabellenblätter gibt:
Code:
Sub chart_umbenennen()

Dim i As Integer
Dim iAnzahl As Integer
Dim iAnzahl_Tabellen As Integer
Dim sName_alt As String
Dim sName_neu As String

sName_alt = "Chart"
sName_neu = "Diagramm"
iAnzahl_Tabellen = Sheets.Count

For i = iAnzahl_Tabellen To 1 Step -1
  With Worksheets(i)
    If .ChartObjects.Count <> 0 Then
      For iAnzahl = .ChartObjects.Count To 1 Step -1
        .ChartObjects(iAnzahl).Name = Replace(.ChartObjects(iAnzahl).Name, sName_alt, sName_neu)
      Next iAnzahl
    End If
  End With
Next i

End Sub
 
Zuletzt bearbeitet:
Vielen Dank! :bussi:
Ich habe den zweiten Code eben erfolgreich ausprobiert. Es kommt keine Fehlermeldung und es sieht auf den ersten Blick richtig aus. Mit Makros kenne ich mich so gut wie gar nicht aus. Per Google habe ich schon welche gefunden, wo ich "Diagramm" in "Chart" umbennen kann. Da es aber viele durchnummerierte gibt, wäre das Makro über diesen zu-Fuß-Weg bald aufwändiger, als wenn man per Hand alles umbenennen würde. Ich habe diesen Mr.-Snoot-Vorschlag gleich an meine Leute weitergeleitet.

Gerne würde ich aber noch mal das Phänomen in den Raum stellen. Ist das ein Bug? Weil neu erstellte Diagramme auch in 2007 Diagramm heißen. Wo ist der Haken? Ich dachte, 2007 LIEST die Datei erst mal nur. Irgendwie scheint 2007 beim Anzeigen schon eine Art "Input-Konverter" drüber laufen zu lassen, der nur Englisch kann, oder irgendwas in die Richtung.
 
Zuletzt bearbeitet:
Um einen Laufzeitfehler zu übergehen, falls ein Diagramm mal im Tabellenblatt gelöscht wird (was ebenfalls dann das letzte Diagramm nicht umenennt), würde ich folgenden Code verwenden:
Möchte hiermit aber nicht Mr. Snoot's Arbeit in Frage stellen. (Schöne Grüße von hier ;) )

Code:
Option Explicit

Sub Makro1()
     Dim objChart As ChartObject
     Dim ws As Worksheet
     Dim sNameAlt As String, sNameNeu As String
     
     sNameAlt = "Chart"
     sNameNeu = "Diagramm"
     
     For Each ws In ActiveWorkbook.Worksheets
          For Each objChart In ws.ChartObjects
               objChart.Name = Replace(objChart.Name, sNameAlt, sNameNeu)
          Next
     Next
End Sub
 
Zurück
Oben