Vai al contenuto principale

Come trovare e sostituire il testo nei titoli dei grafici in Excel?

I grafici sono molto utili per noi in Excel e spesso diamo loro alcuni titoli per identificarli. Ma hai provato a trovare e sostituire il valore del testo nei titoli dei grafici all'interno di più grafici? Oggi parlerò di come trovare un testo specifico in più riquadri del grafico e sostituirli con un altro valore in Excel.

Trova e sostituisci il testo nei titoli dei grafici in Excel con il codice VBA


freccia blu freccia destra Trova e sostituisci il testo nei titoli dei grafici in Excel con il codice VBA

Supponendo di avere un foglio di lavoro che contiene i grafici come mostrato nella seguente schermata e di voler sostituire il testo da gennaio a febbraio solo all'interno di tutti i titoli dei grafici. Naturalmente, puoi modificarli manualmente uno per uno, ma questo richiederà tempo se ci sono più grafici. Quindi qui, il seguente codice VBA può aiutarti a gestire questa attività. </ P>

doc-sostituisci-titoli-grafici1

1. Attiva il tuo foglio di lavoro che contiene i grafici che desideri trovare e sostituire nei loro titoli.

2. Tieni premuto il ALT + F11 chiavi e apre il file Finestra di Microsoft Visual Basic, Applications Edition.

3. Clic inserire > Modulie incolla il codice seguente nel file Finestra del modulo.

Codice VBA: trova e sostituisci il testo nei titoli dei grafici all'interno del foglio di lavoro attivo

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. Quindi premere F5 chiave per eseguire questo codice e verrà visualizzata una finestra di messaggio per ricordarti di inserire il tuo vecchio testo che desideri sostituire, vedi screenshot:

doc-sostituisci-titoli-grafici1

5. E poi clicca OK e viene visualizzata un'altra finestra di messaggio, è necessario digitare il nuovo valore di testo che si desidera sostituire con quello vecchio, vedere screenshot:

doc-sostituisci-titoli-grafici1

6. Continua a fare clic OK per chiudere la finestra di messaggio e i tuoi vecchi testi sono stati sostituiti dalle notizie contemporaneamente nel foglio di lavoro corrente come mostrato nella seguente schermata:

doc-sostituisci-titoli-grafici1

Note:: Se è necessario trovare e sostituire il valore di testo dei titoli dei grafici in tutti i fogli di lavoro in una cartella di lavoro, è necessario applicare il seguente codice VBA: (La procedura è la stessa di cui sopra)

Codice VBA: trova e sostituisci il testo nei titoli dei grafici all'interno di tutti i fogli di lavoro

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

Articoli correlati:

Come trovare e sostituire il testo all'interno dei commenti in Excel?

Come trovare e sostituire un testo specifico in più caselle di testo di Excel?

Come modificare più percorsi di collegamento ipertestuale contemporaneamente in Excel?

I migliori strumenti per la produttività in ufficio

🤖 Assistente AI di Kutools: Rivoluziona l'analisi dei dati basandosi su: Esecuzione intelligente   |  Genera codice  |  Crea formule personalizzate  |  Analizzare i dati e generare grafici  |  Richiama le funzioni di Kutools...
Funzioni popolari: Trova, evidenzia o identifica i duplicati   |  Elimina righe vuote   |  Combina colonne o celle senza perdere dati   |   Round senza formula ...
Super ricerca: VLookup a criteri multipli    VLookup a valori multipli  |   VLookup su più fogli   |   Ricerca fuzzy ....
Elenco a discesa avanzato: Crea rapidamente un elenco a discesa   |  Elenco a discesa dipendente   |  Elenco a discesa a selezione multipla ....
Gestore di colonna: Aggiungi un numero specifico di colonne  |  Sposta colonne  |  Attiva/disattiva lo stato di visibilità delle colonne nascoste  |  Confronta intervalli e colonne ...
Funzionalità in primo piano: Messa a fuoco della griglia   |  Vista di progettazione   |   Grande barra delle formule    Gestore di cartelle di lavoro e fogli   |  Resource Library (Testo automatico)   |  Date picker   |  Combina fogli di lavoro   |  Crittografa/decrittografa le celle    Invia e-mail per elenco   |  Super filtro   |   Filtro speciale (filtro grassetto/corsivo/barrato...) ...
I 15 migliori set di strumenti12 Testo Strumenti (aggiungi testo, Rimuovi personaggi, ...)   |   50+ Grafico Tipi (Diagramma di Gantt, ...)   |   40+ Pratico Formule (Calcola l'età in base al compleanno, ...)   |   19 Inserimento Strumenti (Inserisci il codice QR, Inserisci immagine dal percorso, ...)   |   12 Conversione Strumenti (Numeri in parole, Conversione di valuta, ...)   |   7 Unisci e dividi Strumenti (Combina righe avanzate, Celle divise, ...)   |   ... e altro ancora

Potenzia le tue competenze di Excel con Kutools per Excel e sperimenta l'efficienza come mai prima d'ora. Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e risparmiare tempo.  Fai clic qui per ottenere la funzionalità di cui hai più bisogno...

Descrizione


Office Tab porta l'interfaccia a schede in Office e semplifica notevolmente il tuo lavoro

  • Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede della stessa finestra, piuttosto che in nuove finestre.
  • Aumenta la produttività del 50% e riduce ogni giorno centinaia di clic del mouse!

 

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