Nazev listu podle buňky - pokud se buňka mění jako odkaz

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

MK_Vs
Level 2
Level 2
Příspěvky: 200
Registrován: červen 10
Pohlaví: Nespecifikováno
Stav:
Offline

Nazev listu podle buňky - pokud se buňka mění jako odkaz

Příspěvekod MK_Vs » 23 led 2013 08:54

DObrý den,

změna názvu listu pomocí ruční změny hodnoty buňky funguje pomocí

Kód: Vybrat vše

Option Explicit

    Private Sub Worksheet_Change(ByVal Target As Range)
      If Target.Address <> "$B$24" Then Exit Sub
      ActiveSheet.Name = Range("B24").Value
    End Sub


Jak ale měnit název listu, pokud chci mít odkaz na buňku, ve které se mění text podle zadání různých hodnot funkcí CONCATENATE.

Děkuji

Reklama
Mirdad69
Level 2
Level 2
Příspěvky: 219
Registrován: červen 12
Pohlaví: Muž
Stav:
Offline

Re: Nazev listu podle buňky - pokud se buňka mění jako odkaz

Příspěvekod Mirdad69 » 23 led 2013 11:09

Dobrý den,
pokud ten CONCATENATE je na základě změny více dalších buněk, tak se jen rozšíří ta podmínka.
Takže ke změně jména dojde po změně kterékoliv z té kontrolované buňky.
Do názvu se bude plnit hodnota z té buňky, ve které je concatenate.
Např.

Kód: Vybrat vše

Private Sub Worksheet_Change(ByVal Target As Range)
      If Target.Address = "$B$2" Or Target.Address = "$B$1" Or Target.Address = "$A$1" Then
      ActiveSheet.Name = Range("B2").Value
      End If
End Sub

Štučka
Level 2.5
Level 2.5
Příspěvky: 279
Registrován: srpen 12
Pohlaví: Žena
Stav:
Offline

Re: Nazev listu podle buňky - pokud se buňka mění jako odkaz

Příspěvekod Štučka » 23 led 2013 11:33

Nebo varianta jednodušší

Private Sub Worksheet_Calculate()

If Range("B24").Value <> 0 Then
ActiveSheet.Name = Range("B24").Value

End If


End Sub

MK_Vs
Level 2
Level 2
Příspěvky: 200
Registrován: červen 10
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Nazev listu podle buňky - pokud se buňka mění jako odkaz

Příspěvekod MK_Vs » 23 led 2013 12:38

Dobrý den,

jak lze upravit tento vzorec, v případě, že se bude pojmenování listu řídit odkazem z jiného listu?

V Listu1 se buňky B2 napíši text.
Tento se promítne do buňky C5 na Listu2.
Z buňky C5 List2 by se měl pojmenovat aktuální List, tedy List2.

Mirdad69
Level 2
Level 2
Příspěvky: 219
Registrován: červen 12
Pohlaví: Muž
Stav:
Offline

Re: Nazev listu podle buňky - pokud se buňka mění jako odkaz

Příspěvekod Mirdad69 » 23 led 2013 13:27

V okně Immediate si zjistím index toho listu:
?activesheet.index
a pak změním ActiveSheet na Sheets(index)

Kód: Vybrat vše

 Private Sub Worksheet_Calculate()
If Range("B24").Value <> 0 Then
Sheets(2).Name = Range("B24").Value
End If
End Sub

MK_Vs
Level 2
Level 2
Příspěvky: 200
Registrován: červen 10
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Nazev listu podle buňky - pokud se buňka mění jako odkaz

Příspěvekod MK_Vs » 23 led 2013 14:31

DObrý den,

děkuji za rady, funguje.

Když bude mít dokumet např. 20 listů, je možno automaticky přejmonovávat Sheets(2).Name v daném makru, nebo nezbyde než ručně.

Děkuji.
Přílohy
list_jmeno.xlsm
(19.45 KiB) Staženo 131 x

Mirdad69
Level 2
Level 2
Příspěvky: 219
Registrován: červen 12
Pohlaví: Muž
Stav:
Offline

Re: Nazev listu podle buňky - pokud se buňka mění jako odkaz

Příspěvekod Mirdad69 » 23 led 2013 14:54

pokud nebude odstraněn list s indexem 1, tak bude mít stále index 2.

MK_Vs
Level 2
Level 2
Příspěvky: 200
Registrován: červen 10
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Nazev listu podle buňky - pokud se buňka mění jako odkaz

Příspěvekod MK_Vs » 23 led 2013 15:48

Dobrý den,

to znamená, že i když bude list 10. v pořadí, budou vždy se přejmenuje správně.
Makro pak bude muset být vkaždém listu kde přejmenovávám.

Mirdad69
Level 2
Level 2
Příspěvky: 219
Registrován: červen 12
Pohlaví: Muž
Stav:
Offline

Re: Nazev listu podle buňky - pokud se buňka mění jako odkaz

Příspěvekod Mirdad69 » 24 led 2013 00:29

Nebát se a vyzkoušet, tak jsem se učil s excelem.


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek

Zpět na “Kancelářské balíky”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 3 hosti