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

Kako narediti ime zavihka lista enako vrednosti celice v Excelu?

V nekaterih primerih boste morda morali preimenovati delovni list na podlagi določene vrednosti celice. V tem članku vam bomo pokazali načine, kako ime zavihka lista enačiti vrednosti celice v Excelu.

Ime zavihka lista naj bo enako vrednosti celice s kodo VBA
Ime zavihka lista naj bo enako vrednosti celice s programom Kutools za Excel


Ime zavihka lista naj bo enako vrednosti celice s kodo VBA

Z naslednjo kodo VBA lahko ime zavihka lista samodejno nastavite na vrednost celice.

1. Z desno miškino tipko kliknite zavihek lista, za katerega želite, da je ime lista enako vrednosti celice, nato kliknite Ogled kode v meniju z desnim klikom. Oglejte si posnetek zaslona:

2. Kopirajte in prilepite spodnjo kodo v okno Code in pritisnite druga + Q tipke hkrati, da zaprete okno Microsoft Visual Basic for Applications.

Koda VBA: jeziček lista naj bo enak vrednosti celice

Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 20230130
    On Error Resume Next
    If Not Intersect(Target, Range("A1")) Is Nothing Then
        ActiveSheet.Name = ActiveSheet.Range("A1")
    ElseIf Not Intersect(Target.Dependents, Range("A1")) Then
        ActiveSheet.Name = ActiveSheet.Range("A1")
    End If
End Sub

Opombe: V kodi je A1 celica, ki vsebuje vrednost, ki jo morate uporabiti kot ime lista. Lahko ga spremenite po potrebi.

Od zdaj naprej, ko se bo vrednost v celici A1 spremenila, se bo enako spremenilo tudi ime zavihka lista.


Ime zavihka lista naj bo enako vrednosti celice s programom Kutools za Excel

V tem poglavju vam predstavljamo Preimenujte več delovnih listov uporabnost Kutools za Excel. S tem pripomočkom lahko v Excelu enostavno preimenujete delovne liste z določeno vrednostjo celice.

Pred vložitvijo vloge Kutools za ExcelProsim najprej ga prenesite in namestite.

1. klik Kutools Plus > Delovni list > Preimenujte več delovnih listov. Oglejte si posnetek zaslona:

2. V Ljubljani Preimenujte več delovnih listov pogovorno okno, morate storiti naslednje.

1). Označite imena delovnih listov, ki jih želite preimenovati, v Delovni listi polje (lahko izberete en list ali več listov).
2). Izberite Zamenjajte izvirno ime lista polje v Preimenuj možnosti oddelek.
3). Če želite preimenovati delovni list ali več delovnih listov z določeno vrednostjo celice, izberite Iz določenega obsega in izberite obseg celic, na podlagi katerih želite preimenovati liste.
4). Kliknite OK . Oglejte si posnetek zaslona:

Vidite lahko, da so izbrani delovni listi takoj preimenovani z določeno vrednostjo obsega, kot je prikazano spodaj.

Opombe:

1. Uporabite lahko filter funkcija za enostavno filtriranje potrebnega delovnega lista, če obstaja veliko delovnih listov.
2. Če želite na vsakem listu preimenovati več delovnih listov z določeno vrednostjo celice. Na primer, list1 bo enak vrednosti celice A1, list2 pa bo enak vrednosti celice A1. Prosimo, izberite delovne liste v Delovni listi polje, nato izberite Preimenujte delovne liste z določeno celico in v polju določite celico A1.

3. Ime lista se ne bo samodejno spremenilo s spremembami vrednosti celice.

  Če želite imeti brezplačen preizkus (30-dan) tega pripomočka, kliknite, če ga želite prenestiin nato nadaljujte z uporabo postopka v skladu z zgornjimi koraki.


Ime zavihka lista naj bo enako vrednosti celice s programom Kutools za Excel


Najboljša orodja za pisarniško produktivnost

Kutools za Excel rešuje večino vaših težav in poveča vašo produktivnost za 80%

  • Ponovna uporaba: Hitro vstavite zapletene formule, grafikoni in vse, kar ste že uporabljali; Šifriraj celice z geslom; Ustvari poštni seznam in pošiljanje e-pošte ...
  • Vrstica Super Formula (enostavno urejanje več vrstic besedila in formule); Bralna postavitev (enostavno branje in urejanje velikega števila celic); Prilepite v filtrirani obseg...
  • Združi celice / vrstice / stolpce brez izgube podatkov; Vsebina razdeljenih celic; Združi podvojene vrstice / stolpce... prepreči podvojene celice; Primerjaj obsege...
  • Izberite Duplicate ali Unique Vrstice; Izberite prazne vrstice (vse celice so prazne); Super Find in Fuzzy Find v mnogih delovnih zvezkih; Naključna izbira ...
  • Natančna kopija Več celic brez spreminjanja sklica formule; Samodejno ustvarjanje referenc na več listov; Vstavi oznake, Potrditvena polja in še več ...
  • Izvleček besedila, Dodaj besedilo, Odstrani po položaju, Odstrani presledek; Ustvari in natisni vmesne seštevke strani Pretvarjanje med vsebino celic in komentarji...
  • Super filter (shranite in uporabite sheme filtrov za druge liste); Napredno razvrščanje glede na mesec / teden / dan, pogostost in drugo; Poseben filter s krepko, ležeče ...
  • Združite delovne zvezke in delovne liste; Spoji tabele na podlagi ključnih stolpcev; Razdelite podatke na več listov; Paketna pretvorba xls, xlsx in PDF...
  • Več kot 300 zmogljivih funkcij. Podpira Office / Excel 2007-2021 in 365. Podpira vse jezike. Enostavna uvedba v vašem podjetju ali organizaciji. 30-dnevna brezplačna preizkusna različica vseh funkcij. 60-dnevna garancija vračila denarja.
zavihek kte 201905

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!
dno pisarniške mize
Komentarji (28)
Ocene še ni. Bodite prvi in ​​ocenite!
Ta komentar je moderator na spletnem mestu minimiziral
To sem prilepil po navodilih, vendar se ni prikazal na mojem seznamu razpoložljivih makrov. Poskušal sem ga ročno zagnati tako, da sem vtipkal ime makra. Ko je poskušal zagnati makro, se je prikazalo sporočilo o napaki »Argument ni obvezen«.

Zasebni poddelovni list_Spremeni (ByVal Target As Range)
Če se ne seka(Cilj, obseg("A1")) je potem nič
ActiveSheet.Name = ActiveSheet.Range("A1")
Konec Če
End Sub

Je še kdo uporabljal to kodo in je imel isto težavo?

Kot test sem izvedel bolj osnovno kodo in je delovala dobro, tako da vrednost v "A1" ne povzroča težave. Ko zaženem spodnjo kodo, lahko na seznamu makrov vidim ime makra "myTabName". Zgornja koda se ne prikaže in predvidevam, da je to zaradi napake/manjkajočega argumenta.

Sub myTabName()
ActiveSheet.Name = ActiveSheet.Range("A1")
End Sub

Hvala za vašo pomoč, saj bi zelo rad uporabil kodo, kot je predvideno za avtomatizacijo sprememb imena zavihka na podlagi vrednosti celice.
Ta komentar je moderator na spletnem mestu minimiziral
Dragi Jason,
Koda v mojem primeru deluje dobro. Ali bi prosim navedli svojo različico Officea? Hvala za vaš komentar.
Ta komentar je moderator na spletnem mestu minimiziral
Živjo Crystal,

Tudi pri meni ni delovalo, je morda zato, ker je celica, ki jo omenjam, formula?

Hvala za odgovor
Ta komentar je moderator na spletnem mestu minimiziral
Živjo Mei,

Hvala za vaše mnenje. Težavo je povzročila formula. Koda je bila spremenjena. Prosim poskusite.

Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 20230130
    On Error Resume Next
    If Not Intersect(Target, Range("A1")) Is Nothing Then
        ActiveSheet.Name = ActiveSheet.Range("A1")
    ElseIf Not Intersect(Target.Dependents, Range("A1")) Then
        ActiveSheet.Name = ActiveSheet.Range("A1")
    End If
End Sub
Ta komentar je moderator na spletnem mestu minimiziral
Ta koda deluje, vendar ne posodobi samodejno imena zavihka, ko celica, iz katere potegne ime, če se sklicuje na drugo celico (in se ta celica spremeni).


To pomeni, da spremenim celico na glavnem seznamu, ki spremeni besedilo celice v določeni celici na vsakem zavihku, na katerega se koda sklicuje kot ime zavihka, VENDAR zavihek ne posodobi svojega imena ustrezno.
Ta komentar je moderator na spletnem mestu minimiziral
Dober dan,
Naslednja koda VBA lahko reši vašo težavo. Hvala za vaš komentar 1

Zasebni poddelovni list_Spremeni (ByVal Target As Range)
Dim xRg kot obseg, xCell kot razpon
On Error Resume Next
Če se ne seka(Cilj, obseg("A1")) je potem nič
ActiveSheet.Name = ActiveSheet.Range("A1")
Konec Če
Application.EnableEvents = False
Nastavite xRg = ActiveSheet.Range("A1").Precedens
Če ne, potem je xRg nič
Za vsako xCell In xRg
ActiveSheet.Name = ActiveSheet.Range("A1")
Naslednji
Konec Če
Aplikacija EnableEvents = True
End Sub
Ta komentar je moderator na spletnem mestu minimiziral
Še vedno ne deluje. Imam enak problem kot jJJ. crystal: Ali je v vašem odgovoru prikazana celotna koda?
Zadnja vrstica, prikazana v vašem komentarju, je "Set xRg = ActiveSheet.Range("A1").Precedents"
Ta komentar je moderator na spletnem mestu minimiziral
Spoštovani JAS,
Kliknite gumb Preberi več na desni strani komentarja, da prikažete celoten komentar.
Ta komentar je moderator na spletnem mestu minimiziral
Še vedno imam isto težavo.

Imam A1 novega lista, ki kaže na drugo celico na drugem zavihku. Posodobi se prvič (ko izvedete), vendar se pri urejanju glavne celice ne spremeni
Ta komentar je moderator na spletnem mestu minimiziral
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
Nastavi cilj = razpon ("A1")
Če je Target = "" Nato zapustite Sub
Ob napaki Pojdi na Badname
ActiveSheet.Name = Levo (Cilj, 31)
Exit Sub
Slabo ime:
MsgBox "Prosim, popravite vnos v A1." & Chr(13) _
& "Zdi se, da vsebuje enega ali več " & Chr(13) _
& "nezakoniti znaki." & Chr (13)
Obseg ("A1"). Aktivirajte
End Sub
Ta komentar je moderator na spletnem mestu minimiziral
Še vedno je težava ista, spremeni se prvič. ko to celico povežem z drugim listom in jo spremenim, se ne spremeni samodejno
Ta komentar je moderator na spletnem mestu minimiziral
To kodo moram uporabiti, vendar še nikoli nisem vnesel kode vba. Vsako vodstvo bi bilo hvaležno.
Ta komentar je moderator na spletnem mestu minimiziral
Spremenim celico na glavnem seznamu, ki spremeni besedilo celice v določeni celici na vsakem zavihku, na katerega se koda sklicuje kot ime zavihka, VENDAR zavihek ne posodobi svojega imena ustrezno.

---- to ni delo
Ta komentar je moderator na spletnem mestu minimiziral
Dobil sem celotno kodo in je delovala. Najlepša hvala za vašo pomoč!
Ta komentar je moderator na spletnem mestu minimiziral
Spoštovani JAS,
Vesel sem, da sem lahko pomagal.
Ta komentar je moderator na spletnem mestu minimiziral
Lahko raje uporabite preprost makro



Podmakro3()
Dim indeks As Integer
Za indeks = 1 do 18

Listi(indeks).Ime = Listi(indeks).Obseg("A2").Vrednost

Naslednji indeks



End Sub
Ta komentar je moderator na spletnem mestu minimiziral
Dober dan,
Hvala za delitev.
Ta komentar je moderator na spletnem mestu minimiziral
To je točno tisto, kar potrebujem, vendar potrebujem zavihek za ponovno ustvarjanje datuma in ne deluje... Predvidevam, da je to nekaj v zvezi z načinom, kako excel ureja datum in čas, ali lahko kdo predlaga rešitev?
Ta komentar je moderator na spletnem mestu minimiziral
Hi Nick,
Excel ne podpira vnašanja imena lista, ki vsebuje posebne znake. Če datum, ki ga vnesete, vsebuje znak /, vam ne bo omogočilo, da ustvarite ime lista s tem datumom.
Ta komentar je moderator na spletnem mestu minimiziral
Kako se lahko sklicujem na dve celici. na primer ime in ID številka?
Ta komentar je moderator na spletnem mestu minimiziral
Uporabljam vašo natančno kodo iz zgoraj za kodo VBA, ki deluje popolnoma za tisto, kar potrebujem. Vendar pa imam na listu z imenom Job Template kopico makrov, ki se kopirajo in ponovno uporabijo za vsako novo opravilo. Vse svoje makre sem zasnoval na podlagi nove kopirane različice, imenovane Job Template (2). Ko se ime lista spremeni v novo ime opravila, makri ne delujejo več in morajo to narediti ročno. Želel bi, da bi lahko kadar koli uporabil katerega koli od svojih makro gumbov, namesto da bi jih uporabljal samo, preden spremenim ime lista.

Ali obstaja način, da se koda VBA vedno sklicuje na ime lista, preden zažene ostale funkcije kode?
Ta komentar je moderator na spletnem mestu minimiziral
Kakšno je največje število delovnih listov, ki jim je mogoče spremeniti imena prek Kutools Plus? ker mi Excel omogoča samo 17 imen za spremembe, in to je to
Ta komentar je moderator na spletnem mestu minimiziral
To je odlično delovalo za moj prvi delovni list, ne pa za drugi ali tretji itd (imam do približno 20 delovnih listov, ki vsi potrebujejo to funkcijo). Sem kaj izpustil?
Ta komentar je moderator na spletnem mestu minimiziral
Živjo A Owen,
Ta koda deluje samo za en delovni list na enkrat. Oprostite za nevšečnosti.
Ta komentar je moderator na spletnem mestu minimiziral
Živjo Crystal,

Ko prilepim vašo kodo, se vrne z napako "uporabniško določena vrsta ni definirana"?

Hvala.
Ta komentar je moderator na spletnem mestu minimiziral
Živjo Tom J,
Prepričajte se, da so te tri možnosti označene v pogovornem oknu Sklici - VBAProject.
https://www.extendoffice.com/images/stories/comments/comment-picture-zxm/error.png
Ta komentar je moderator na spletnem mestu minimiziral
lepo je delovalo!
Ta komentar je moderator na spletnem mestu minimiziral
bonjour,
que voulez-vous dire par appuyer autre autre+q dans le code vba après avoir collé.
J'ai simplement fermé la page après avoir collé et ça ne marche pas
hvala
Tu še ni objavljenih komentarjev
Pustite vaše komentarje
Objava kot gost
×
Ocenite to objavo:
0   Znaki
Predlagane lokacije

Sledi nam

Copyright © 2009 - www.extendoffice.com. | Vse pravice pridržane. Poganja ga ExtendOffice. | Kazalo
Microsoft in logotip Office sta blagovni znamki ali registrirani blagovni znamki družbe Microsoft Corporation v ZDA in / ali drugih državah.
Zaščiteno s Sectigo SSL