Namig: drugi jeziki so prevedeni v Google. Lahko obiščete English različico te povezave.
Vpiši se
x
or
x
x
Registracija
x

or

Kako najti in zamenjati besedilo v naslovih grafikonov v Excelu?

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

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


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


Predvidevam, da imate delovni list, ki vsebuje grafikone kot prikazani prikaz slike, in želite besedilo zamenjati januarja do februarja v vseh naslovih grafikona. Seveda jih lahko ročno spremenite enega za drugim, vendar je to čas, če je na voljo več grafikonov. Torej, tukaj vam lahko pomagajo pri tej nalogi naslednja koda VBA. </ P>

doc-zamenjaj-grafikon-naslove1

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

2. Drži dol ALT + F11 tipke in odpre Okno Microsoft Visual Basic za aplikacije.

3. Kliknite Vstavi > Moduli, in prilepite naslednjo kodo v Okno modula.

VBA koda: poiščite in zamenjajte besedilo v naslovih grafikonov v 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 ključ, da zaženete to kodo, in se bo oglasno polje odprlo, da vas opomni, da vnesete staro besedilo, ki ga želite zamenjati, si oglejte posnetek zaslona:

doc-zamenjaj-grafikon-naslove1

5. In nato kliknite OK in prikaže se novo okno, morate vnesti novo novo besedilno vrednost, ki jo želite zamenjati s starim, glejte sliko zaslona:

doc-zamenjaj-grafikon-naslove1

6. Pojdite s klikom OK da zaprete odzivno okno, stara besedila pa so v trenutnem delovnem listu enkrat zamenjali novice, kot je prikazano spodaj prikazano sliko:

doc-zamenjaj-grafikon-naslove1

Opombe: Če morate najti in zamenjati besedilno vrednost naslovov grafikonov v vseh delovnih listih v delovnem zvezku, morate uporabiti naslednjo kodo VBA: (postopek je enak zgornjemu)

VBA koda: poiščite in zamenjajte besedilo v naslovih grafikonov v vseh delovnih preglednicah

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 zamenjati besedilo v komentarjih v Excelu?

Kako najti in nadomestiti določeno besedilo v več besedilnih poljih Excela?

Kako spremeniti več poti hiperpovezave naenkrat v Excelu?


Priporočena orodja za produktivnost za Excel

zavihek kte 201905

Kutools za Excel vam pomaga, da vedno končate delo pred časom in izstopite iz množice

  • Več kot zmogljive napredne funkcije 300, zasnovane za 1500 delovne scenarije, ki povečujejo produktivnost z 70%, vam dajejo več časa za skrb za družino in uživanje v življenju.
  • Ne potrebujete več pomnilniških formul in VBA kod, od zdaj naprej pa dajate svojim možganom počitek.
  • Postanite strokovnjak za Excel v minutah 3, zapletene in ponavljajoče se operacije lahko opravite v nekaj sekundah,
  • Vsak dan zmanjšajte število operacij tipkovnice in miške, zdaj se poslovite od poklicnih bolezni.
  • 110,000 visoko učinkovite ljudi in 300 + svetovno priznanih podjetij izbiro.
  • Brezplačna preizkusna različica 60 dneva. 60-dnevno jamstvo vračila denarja. 2 let brezplačne nadgradnje in podpore.

Prinaša kartično brskanje in urejanje za Microsoft Office, veliko močnejši od zavihkov brskalnika

  • Office Tab je namenjen za Word, Excel, PowerPoint in druge Office aplikacije: Založnik, Dostop, Visio in Projekt.
  • Odprite in ustvarite več dokumentov v novih zavihkih istega okna in ne v novih oknih.
  • Z 50% poveča vašo produktivnost in vsak dan zmanjša na stotine klikov z miško!

Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Tony D · 2 years ago
    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.
  • To post as a guest, your comment is unpublished.
    Drew · 3 years ago
    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!)
  • To post as a guest, your comment is unpublished.
    Natty · 3 years ago
    Thank you!!! It helped me so much!!!
  • To post as a guest, your comment is unpublished.
    SJ · 4 years ago
    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
    • To post as a guest, your comment is unpublished.
      CB · 2 years ago
      How does one change the VBA macro to only apply the change to selected charts (and not all the charts on the worksheet)?