Přejít k hlavnímu obsahu

 Jak kopírovat list a přejmenovat na základě hodnoty buňky v aplikaci Excel?

Za normálních okolností můžete použít Přesunout nebo Kopírovat funkce pro kopírování listu a poté podle potřeby ručně zadejte nový název kopie. Zkusili jste ale někdy po zkopírování listu přejmenovat list na základě hodnoty buňky? V tomto článku budu hovořit o tom, jak automaticky přejmenovat list na základě hodnoty buňky, když vytvoříte kopii.

Zkopírujte list a přejmenujte na základě hodnoty buňky pomocí kódu VBA

Zkopírujte list vícekrát a přejmenujte na základě hodnot buněk pomocí Kutools pro Excel


Zkopírujte list a přejmenujte na základě hodnoty buňky pomocí kódu VBA

Následující kód VBA vám pomůže zkopírovat list a automaticky jej přejmenovat na konkrétní hodnotu buňky, postupujte takto:

1. Aktivujte list, který chcete zkopírovat, a poté podržte klávesu ALT + F11 klávesy pro otevření Microsoft Visual Basic pro aplikace okno.

2, klikněte Vložit > Modula vložte následující kód do Modul Okno.

Kód VBA: Zkopírujte list a přejmenujte jej s hodnotou buňky:

Sub Copyrenameworksheet()
'Updateby Extendoffice
    Dim ws As Worksheet
    Set wh = Worksheets(ActiveSheet.Name)
    ActiveSheet.Copy After:=Worksheets(Sheets.Count)
    If wh.Range("A1").Value <> "" Then
    ActiveSheet.Name = wh.Range("A1").Value
    End If
    wh.Activate
End Sub

3. A pak stiskněte F5 klíč ke spuštění tohoto kódu a váš aktuální list byl zkopírován do aktuálního sešitu po všech listech a je přejmenován na zadanou hodnotu buňky, viz screenshot:

doc copy raname podle hodnoty 1

Poznámka: Ve výše uvedeném kódu odkaz na buňku A1 je hodnota buňky, kterou chcete přejmenovat pro nový zkopírovaný list, můžete ji podle potřeby změnit.


Zkopírujte list vícekrát a přejmenujte na základě hodnot buněk pomocí Kutools pro Excel

Výše uvedený kód lze přejmenovat pouze s jednou hodnotou buňky, pokud potřebujete list zkopírovat vícekrát a přejmenovat je na základě seznamu hodnot buněk, Kutools pro ExcelJe Vytvořte Sequence Worksheet vám pomůže dokončit tento úkol co nejrychleji.

Kutools pro Excel : s více než 300 praktickými doplňky Excel, můžete si je vyzkoušet bez omezení do 30 dnů. 

Po instalaci Kutools pro Excel, postupujte následovně:

1, klikněte Kutools Plus > Pracovní list > Vytvořte pracovní listy sekvence, viz screenshot:

doc copy raname podle hodnoty 3

2. V Vytvořte Sequence Worksheet dialogové okno, proveďte následující operace:

(1.) Vyberte název listu, který chcete zkopírovat z Základní pracovní list rozbalovací seznam;

(2.) Vyberte možnost Data v rozsahu pod položkou Názvy listů založené na a klepněte na tlačítko doc copy raname podle hodnoty 5 Tlačítko pro výběr hodnot buněk, na které chcete přejmenovat zkopírované listy na základě.

Stáhněte si nyní Kutools pro Excel!

3. Pak klikněte na tlačítko Ok Tlačítko a konkrétní list byly zkopírovány vícekrát a přejmenovány na hodnoty buněk, které jste vybrali v novém sešitu, viz screenshot:

doc copy raname podle hodnoty 4

Stáhněte si zdarma zkušební verzi Kutools pro Excel!


Ukázka: Několikrát zkopírujte list a přejmenujte jej na základě hodnot buněk pomocí programu Kutools pro Excel

Kutools pro Excel: s více než 300 praktickými doplňky aplikace Excel, můžete vyzkoušet bez omezení do 30 dnů. Stáhněte si a vyzkoušejte zdarma hned teď!

Nejlepší nástroje pro produktivitu v kanceláři

Populární funkce: Najít, zvýraznit nebo identifikovat duplikáty   |  Odstranit prázdné řádky   |  Kombinujte sloupce nebo buňky bez ztráty dat   |   Kolo bez vzorce ...
Super vyhledávání: Více kritérií VLookup    VLookup s více hodnotami  |   VLookup na více listech   |   Fuzzy vyhledávání ....
Pokročilý rozevírací seznam: Rychle vytvořte rozevírací seznam   |  Závislý rozbalovací seznam   |  Vícenásobný výběr rozevíracího seznamu ....
Správce sloupců: Přidejte konkrétní počet sloupců  |  Přesunout sloupce  |  Přepnout stav viditelnosti skrytých sloupců  |  Porovnejte rozsahy a sloupce ...
Doporučené funkce: Zaměření mřížky   |  Návrhové zobrazení   |   Velký Formula Bar    Správce sešitů a listů   |  Knihovna zdrojů (Automatický text)   |  Výběr data   |  Zkombinujte pracovní listy   |  Šifrovat/dešifrovat buňky    Odesílat e-maily podle seznamu   |  Super filtr   |   Speciální filtr (filtr tučné/kurzíva/přeškrtnuté...) ...
Top 15 sad nástrojů12 Text Tools (doplnit text, Odebrat znaky, ...)   |   50+ Graf Typ nemovitosti (Ganttův diagram, ...)   |   40+ Praktické Vzorce (Vypočítejte věk na základě narozenin, ...)   |   19 Vložení Tools (Vložte QR kód, Vložit obrázek z cesty, ...)   |   12 Konverze Tools (Čísla na slova, Přepočet měny, ...)   |   7 Sloučit a rozdělit Tools (Pokročilé kombinování řádků, Rozdělit buňky, ...)   |   ... a více

Rozšiřte své dovednosti Excel pomocí Kutools pro Excel a zažijte efektivitu jako nikdy předtím. Kutools for Excel nabízí více než 300 pokročilých funkcí pro zvýšení produktivity a úsporu času.  Kliknutím sem získáte funkci, kterou nejvíce potřebujete...

karta kte 201905


Office Tab přináší do Office rozhraní s kartami a usnadňuje vám práci

  • Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
  • Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
  • Zvyšuje vaši produktivitu o 50%a snižuje stovky kliknutí myší každý den!
Comments (2)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Your code is what I have been looking for, however the cell contents that I wish to use to rename the sheet is a date. For example, on the first sheet, cell A2 displays a date as Monday 3 April 2017. What I would like to happen is when the next sheet is created by the macro would be to take the date from A2, add 7 to display, for example, "Monday 10 July, 2017" but rename the new sheet in the dd-mm-yy format, so "10-07-17". Is this possible? By the way, I have Kutools for Excel, but this spreasheet will be a blood pressure record for my dad who doesnt have Kutools. Thanks in advance!
This comment was minimized by the moderator on the site
The code below works great. My question is, is it possible to automatically open the new worksheet (based on A1) and delete the content from the previous sheet as it is being used as the template. Sub Copyrenameworksheet() 'Updateby Extendoffice 20160704 Dim ws As Worksheet Set wh = Worksheets(ActiveSheet.Name) ActiveSheet.Copy After:=Worksheets(Sheets.Count) If wh.Range("A1").Value "" Then ActiveSheet.Name = wh.Range("A1").Value End If wh.Activate End Sub
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations