Direkt zum Inhalt

Wie finde und ersetze ich Text in Diagrammtiteln in Excel?

Diagramme sind für uns in Excel sehr nützlich, und wir geben ihnen häufig einige Titel, um sie zu identifizieren. Aber haben Sie versucht, den Textwert in Diagrammtiteln in mehreren Diagrammen zu finden und zu ersetzen? Heute werde ich darüber sprechen, wie Sie einen bestimmten Text in mehreren Diagrammkacheln finden und durch einen anderen Wert in Excel ersetzen können.

Suchen und ersetzen Sie Text in Diagrammtiteln in Excel durch VBA-Code


Pfeil blau rechte Blase Suchen und ersetzen Sie Text in Diagrammtiteln in Excel durch VBA-Code

Angenommen, Sie haben ein Arbeitsblatt, das die Diagramme wie im folgenden Screenshot enthält, und Sie möchten den Text Januar bis Februar nur in allen Diagrammtiteln ersetzen. Natürlich können Sie sie einzeln manuell ändern, dies ist jedoch zeitaufwändig, wenn mehrere Diagramme vorhanden sind. Der folgende VBA-Code kann Ihnen bei der Bewältigung dieser Aufgabe helfen. </ P>

doc-replace-chart-title1

1. Aktivieren Sie Ihr Arbeitsblatt, das die Diagramme enthält, die Sie suchen und in deren Titeln ersetzen möchten.

2. Halten Sie die Taste gedrückt ALT + F11 Tasten, und es öffnet die Microsoft Visual Basic für Applikationen-Fenster.

3. Klicken Sie Insert > Modulund fügen Sie den folgenden Code in das Feld ein Modulfenster.

VBA-Code: Suchen und Ersetzen von Text in Diagrammtiteln im aktiven Arbeitsblatt

Sub ChartLabelReplace()
'Update 20140603
Dim xWs As Worksheet
Dim xFindStr As String
Dim xReplace As String
xFindStr = Application.InputBox("Find:", xTitleId, "", Type:=2)
xReplace = Application.InputBox("Replace:", xTitleId, "", Type:=2)
Set xWs = Application.ActiveSheet
For Each ch In xWs.ChartObjects
    If ch.Chart.HasTitle Then
        ch.Chart.ChartTitle.Text = VBA.Replace(ch.Chart.ChartTitle.Text, xFindStr, xReplace, 1)
    End If
Next
End Sub

4. Dann drücken F5 Wenn Sie die Taste drücken, um diesen Code auszuführen, wird ein Eingabeaufforderungsfeld angezeigt, das Sie daran erinnert, Ihren alten Text einzugeben, den Sie ersetzen möchten. Siehe Screenshot:

doc-replace-chart-title1

5. Und dann klick OK Wenn ein weiteres Eingabeaufforderungsfeld angezeigt wird, müssen Sie Ihren neuen Textwert eingeben, der den alten ersetzen soll. Siehe Screenshot:

doc-replace-chart-title1

6. Klicken Sie weiter OK Um das Eingabeaufforderungsfeld zu schließen, wurden Ihre alten Texte auf einmal im aktuellen Arbeitsblatt durch die Nachrichten ersetzt (siehe Abbildung):

doc-replace-chart-title1

Note: Wenn Sie den Textwert von Diagrammtiteln in allen Arbeitsblättern einer Arbeitsmappe suchen und ersetzen müssen, sollten Sie den folgenden VBA-Code anwenden: (Die Vorgehensweise ist dieselbe wie oben)

VBA-Code: Suchen und Ersetzen von Text in Diagrammtiteln in allen Arbeitsblättern

Sub ChartLabelReplaceAllWorksheet()
'Update 20140603
Dim xFindStr As String
Dim xReplace As String
xFindStr = Application.InputBox("Find:", xTitleId, "", Type:=2)
xReplace = Application.InputBox("Replace:", xTitleId, "", Type:=2)
For Each sh In Worksheets
    For Each ch In sh.ChartObjects
        If ch.Chart.HasTitle Then
            ch.Chart.ChartTitle.Text = VBA.Replace(ch.Chart.ChartTitle.Text, xFindStr, xReplace, 1)
        End If
    Next
Next
End Sub

In Verbindung stehende Artikel:

Wie finde und ersetze ich Text in Kommentaren in Excel?

Wie finde und ersetze ich bestimmten Text in mehreren Textfeldern von Excel?

Wie ändere ich mehrere Hyperlinkpfade gleichzeitig in Excel?

Beste Office-Produktivitätstools

Beliebte Funktionen: Suchen, markieren oder identifizieren Sie Duplikate   |  Leere Zeilen löschen   |  Kombinieren Sie Spalten oder Zellen, ohne Daten zu verlieren   |   Runde ohne Formel ...
Super-Lookup: VLookup mit mehreren Kriterien    VLookup mit mehreren Werten  |   VLookup über mehrere Blätter hinweg   |   Unscharfe Suche ....
Erweiterte Dropdown-Liste: Erstellen Sie schnell eine Dropdown-Liste   |  Abhängige Dropdown-Liste   |  Mehrfachauswahl Dropdown-Liste ....
Spaltenmanager: Fügen Sie eine bestimmte Anzahl von Spalten hinzu  |  Spalten verschieben  |  Schalten Sie den Sichtbarkeitsstatus ausgeblendeter Spalten um  |  Vergleichen Sie Bereiche und Spalten ...
Ausgewählte Funktionen: Rasterfokus   |  Designansicht   |   Große Formelleiste    Arbeitsmappen- und Blattmanager   |  Ressourcen (Autotext)   |  Datumsauswahl   |  Arbeitsblätter kombinieren   |  Zellen verschlüsseln/entschlüsseln    Senden Sie E-Mails nach Liste   |  Superfilter   |   Spezialfilter (Filter fett/kursiv/durchgestrichen...) ...
Top 15 Toolsets12 Text Tools (Text hinzufügen, Zeichen entfernen, ...)   |   50+ Chart Typen (Gantt-Diagramm, ...)   |   40+ Praktisch Formeln (Berechnen Sie das Alter basierend auf dem Geburtstag, ...)   |   19 Einfügen Tools (QR-Code einfügen, Bild aus Pfad einfügen, ...)   |   12 Umwandlung (Conversion) Tools (Zahlen zu Wörtern, Currency Conversion, ...)   |   7 Zusammenführen & Teilen Tools (Erweiterte Zeilen kombinieren, Zellen teilen, ...)   |   ... und mehr

Verbessern Sie Ihre Excel-Kenntnisse mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über 300 erweiterte Funktionen, um die Produktivität zu steigern und Zeit zu sparen.  Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen ...

kte tab 201905


Office Tab Bringt die Oberfläche mit Registerkarten in Office und erleichtert Ihnen die Arbeit erheblich

  • Aktivieren Sie das Bearbeiten und Lesen von Registerkarten in Word, Excel und PowerPoint, Publisher, Access, Visio und Project.
  • Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters und nicht in neuen Fenstern.
  • Steigert Ihre Produktivität um 50 % und reduziert jeden Tag Hunderte von Mausklicks für Sie!

 

Comments (6)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Just want to say thanks for this. Saved me hours of time.
This comment was minimized by the moderator on the site
I want to do this for text in the legend and axis labels as well. What's the VBA name for the Legend? I tried to edit the module by replacing "ChartTitle" with "Legend" "LegendEntry" "ChartLegend" none work.
This comment was minimized by the moderator on the site
Some of my chart titles contain multiple font sizes. When I run the macro above, it converts all of the fonts to the same size and I have to go back through and manually re-size them. Is there a way to modify the VBA code so that it maintains the original font sizes? (I'm still a VBA newb, so any help would be appreciated!)
This comment was minimized by the moderator on the site
Thank you!!! It helped me so much!!!
This comment was minimized by the moderator on the site
This one works for me, because otherwise the variables are not declared : Sub ChartLabelReplace() 'Update 20141017 Dim xFindStr As String Dim xReplace As String Dim ws As Worksheet Dim ch As ChartObject xFindStr = InputBox("Find:") xReplace = InputBox("Replace:") For Each ws In Worksheets For Each ch In ws.ChartObjects If ch.Chart.HasTitle Then ch.Chart.ChartTitle.Text = VBA.Replace(ch.Chart.ChartTitle.Text, xFindStr, xReplace, 1) End If Next Next End Sub
This comment was minimized by the moderator on the site
How does one change the VBA macro to only apply the change to selected charts (and not all the charts on the worksheet)?
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations