Preskoči na glavno vsebino

Kako najti in zamenjati besedilo v naslovih grafikonov v Excelu?

Grafikoni so za nas v Excelu zelo koristni in jim pogosto damo nekaj naslovov za njihovo prepoznavanje. Ali ste že poskušali najti in nadomestiti besedilno vrednost v naslovih grafikonov znotraj več grafikonov? Danes bom govoril o tem, kako najti določeno besedilo v več ploščicah grafikonov in jih nadomestiti z drugo vrednostjo v Excelu.

Poiščite in zamenjajte besedilo v naslovih grafikonov v Excelu s kodo VBA


puščica modri desni mehurček Poiščite in zamenjajte besedilo v naslovih grafikonov v Excelu s kodo VBA

Recimo, da imate delovni list, ki vsebuje grafikone, kot je prikazano na sliki spodaj, in želite besedilo januar do februarja nadomestiti samo z vsemi naslovi grafikonov. Seveda jih lahko ročno spreminjate enega za drugim, vendar bo to zamudno, če obstaja več grafikonov. Torej, naslednja koda VBA vam lahko pomaga pri reševanju te naloge. </ P>

doc-replace-chart-title1

1. Aktivirajte svoj delovni list, ki vsebuje karte, ki jih želite najti in zamenjati v njihovih naslovih.

2. Držite tipko ALT + F11 in odpre tipko Okno Microsoft Visual Basic for Applications.

3. Kliknite Vstavi > Moduliin prilepite naslednjo kodo v Okno modula.

Koda VBA: poiščite in zamenjajte besedilo v naslovih grafikonov na aktivnem delovnem listu

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. Nato pritisnite F5 tipko za zagon te kode in pojavilo se bo pozivno polje, ki vas bo opozorilo na vnos starega besedila, ki ga želite zamenjati, glejte posnetek zaslona:

doc-replace-chart-title1

5. In nato kliknite OK in prikaže se novo pozivno polje, vnesite novo besedilno vrednost, ki jo želite zamenjati, glejte posnetek zaslona:

doc-replace-chart-title1

6. Pojdi na klik OK , da zaprete polje za poziv, in so vaša stara besedila na trenutnem delovnem listu hkrati zamenjala novice, kot je prikazano na sliki spodaj:

doc-replace-chart-title1

Opombe: Če morate najti in nadomestiti besedilno vrednost naslovov grafikonov na vseh delovnih listih v delovnem zvezku, uporabite naslednjo kodo VBA: (Postopek je enak zgornjemu)

Koda VBA: poiščite in zamenjajte besedilo v naslovih grafikonov na vseh delovnih listih

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

Sorodni članki:

Kako najti in nadomestiti besedilo v komentarjih v Excelu?

Kako najti in zamenjati določeno besedilo v več besedilnih poljih programa Excel?

Kako spremeniti več poti hiperpovezav hkrati v Excelu?

Najboljša pisarniška orodja za produktivnost

🤖 Kutools AI Aide: Revolucionirajte analizo podatkov na podlagi: Inteligentna izvedba   |  Ustvari kodo  |  Ustvarite formule po meri  |  Analizirajte podatke in ustvarite grafikone  |  Prikličite funkcije Kutools...
Priljubljene funkcije: Poiščite, označite ali identificirajte dvojnike   |  Izbriši prazne vrstice   |  Združite stolpce ali celice brez izgube podatkov   |   Krog brez formule ...
Super iskanje: Več kriterijev VLookup    Multiple Value VLookup  |   VLookup na več listih   |   Nejasno iskanje ....
Napredni spustni seznam: Hitro ustvarite spustni seznam   |  Odvisni spustni seznam   |  Večkrat izberite spustni seznam ....
Upravitelj stolpcev: Dodajte določeno število stolpcev  |  Premakni stolpce  |  Preklop stanja vidnosti skritih stolpcev  |  Primerjaj obsege in stolpce ...
Predstavljene funkcije: Mrežni fokus   |  Pogled oblikovanja   |   Velika vrstica formule    Upravitelj delovnih zvezkov in listov   |  Knjižnica virov (Samodejno besedilo)   |  Izbirnik datuma   |  Združite delovne liste   |  Šifriranje/dešifriranje celic    Pošljite e-pošto po seznamu   |  Super filter   |   Poseben filter (filter krepko/ležeče/prečrtano ...) ...
15 najboljših kompletov orodij12 Besedilo Orodja (dodajanje besedila, Odstrani znake,...)   |   50 + Graf Vrste (Gantt Chart,...)   |   40+ Praktično Formule (Izračunajte starost glede na rojstni dan,...)   |   19 vstavljanje Orodja (Vstavite kodo QR, Vstavi sliko s poti,...)   |   12 Pretvorba Orodja (Številke v besede, Pretvorba valut,...)   |   7 Spoji in razdeli Orodja (Napredne kombinirane vrstice, Razdeljene celice,...)   |   ... in več

Napolnite svoje Excelove spretnosti s Kutools za Excel in izkusite učinkovitost kot še nikoli prej. Kutools za Excel ponuja več kot 300 naprednih funkcij za povečanje produktivnosti in prihranek časa.  Kliknite tukaj, če želite pridobiti funkcijo, ki jo najbolj potrebujete...

Opis


Kartica Office prinaša vmesnik z zavihki v Office in poenostavi vaše delo

  • Omogočite urejanje in branje z zavihki v Wordu, Excelu, PowerPointu, Publisher, Access, Visio in Project.
  • Odprite in ustvarite več dokumentov v novih zavihkih istega okna in ne v novih oknih.
  • Poveča vašo produktivnost za 50%in vsak dan zmanjša na stotine klikov miške za vas!

 

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