Note: The other languages of the website are Google-translated. Back to English

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

Scheda Office Abilita la modifica a schede e la navigazione in Office e semplifica notevolmente il lavoro ...
Kutools per Excel risolve la maggior parte dei tuoi problemi e aumenta la tua produttività dell'80%
  • Riutilizza qualsiasi cosa: Aggiungi le formule, i grafici e qualsiasi altra cosa più usati o complessi ai tuoi preferiti e riutilizzali rapidamente in futuro.
  • Più di 20 funzioni di testo: Estrai numero dalla stringa di testo; Estrai o rimuovi parte di testi; Converti numeri e valute in parole inglesi.
  • Unisci strumenti: Più cartelle di lavoro e fogli in uno; Unisci più celle / righe / colonne senza perdere dati; Unisci righe duplicate e somma.
  • Strumenti di divisione: Suddivisione dei dati in più fogli in base al valore; Una cartella di lavoro su più file Excel, PDF o CSV; Da una colonna a più colonne.
  • Incolla Salto Righe nascoste / filtrate; Count And Sum di Background Color; Invia e-mail personalizzate a più destinatari in blocco.
  • Super filtro: Crea schemi di filtri avanzati e applicali a qualsiasi foglio; Riordina per settimana, giorno, frequenza e altro; Filtro in grassetto, formule, commenti ...
  • Più di 300 potenti funzionalità; Funziona con Office 2007-2019 e 365; Supporta tutte le lingue; Facile distribuzione nella tua azienda o organizzazione.

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 > Moduloe 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

Kutools per Excel risolve la maggior parte dei tuoi problemi e aumenta la tua produttività dell'80%

  • Riutilizzo: Inserisci rapidamente formule complesse, grafici e tutto ciò che hai usato prima; Crittografa celle con password; Crea mailing list e invia email ...
  • Bar Super Formula (modifica facilmente più righe di testo e formula); Layout di lettura (leggi e modifica facilmente un gran numero di celle); Incolla su intervallo filtrato...
  • Unisci celle / righe / colonne senza perdere dati; Contenuto delle celle divise; Combina righe / colonne duplicate... Impedisci celle duplicate; Confronta intervalli...
  • Seleziona Duplica o Unico Righe; Seleziona Righe vuote (tutte le celle sono vuote); Super Find e Fuzzy Find in molte cartelle di lavoro; Selezione casuale ...
  • Copia esatta Più celle senza modificare il riferimento della formula; Riferimenti di creazione automatica a più fogli; Inserisci punti elenco, Caselle di controllo e altro ...
  • Estrai testo, Aggiungi testo, Rimuovi per posizione, Rimuovi spazio; Creare e stampare totali parziali di paging; Converti contenuto e commenti tra celle...
  • Super filtro (salva e applica schemi di filtri ad altri fogli); Ordinamento avanzato per mese / settimana / giorno, frequenza e altro; Filtro speciale in grassetto, corsivo ...
  • Combina cartelle di lavoro e fogli di lavoro; Unisci tabelle in base a colonne chiave; Suddividi i dati in più fogli; Conversione in batch xls, xlsx e PDF...
  • Più di 300 potenti funzionalità. Supporta Office / Excel 2007-2019 e 365. Supporta tutte le lingue. Facile distribuzione nella tua azienda o organizzazione. Funzionalità complete Prova gratuita di 30 giorni. Garanzia di rimborso di 60 giorni.
scheda kte 201905

Scheda Office porta l'interfaccia a schede a Office e semplifica notevolmente il 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 centinaia di clic del mouse ogni giorno!
fondo officetab

 

Commenti (6)
Ancora nessuna valutazione. Puoi essere il primo a votare!
Questo commento è stato fatto dal moderatore sul sito
Questo funziona per me, perché altrimenti le variabili non sono dichiarate: 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( "Sostituisci:") Per ogni ws In fogli di lavoro Per ogni ch In ws.ChartObjects Se ch.Chart.HasTitle Quindi ch.Chart.ChartTitle.Text = VBA.Replace(ch.Chart.ChartTitle.Text, xFindStr, xReplace, 1) End If Next Next End Sub
Questo commento è stato fatto dal moderatore sul sito
Come si cambia la macro VBA per applicare la modifica solo ai grafici selezionati (e non a tutti i grafici nel foglio di lavoro)?
Questo commento è stato fatto dal moderatore sul sito
Grazie!!! Mi ha aiutato tanto!!!
Questo commento è stato fatto dal moderatore sul sito
Alcuni dei titoli dei miei grafici contengono più dimensioni dei caratteri. Quando eseguo la macro sopra, converte tutti i caratteri nella stessa dimensione e devo tornare indietro e ridimensionarli manualmente. C'è un modo per modificare il codice VBA in modo che mantenga le dimensioni dei caratteri originali? (Sono ancora un principiante VBA, quindi qualsiasi aiuto sarebbe apprezzato!)
Questo commento è stato fatto dal moderatore sul sito
Voglio farlo anche per il testo nella legenda e nelle etichette degli assi. Qual è il nome VBA per la leggenda? Ho provato a modificare il modulo sostituendo "ChartTitle" con "Legend" "LegendEntry" "ChartLegend" non funziona.
Questo commento è stato fatto dal moderatore sul sito
Voglio solo dire grazie per questo. Mi ha fatto risparmiare ore di tempo.
Non ci sono ancora commenti pubblicati qui
Lasciate i vostri commenti
Pubblicazione come ospite
×
Valuta questo post:
0   Personaggi
Posizioni suggerite