< návrat zpět
MS Excel
Téma: VBA Skrýt / zobrazit listy na základě hodnoty
Zaslal/a hard 31.3.2020 22:01
Dobrý den,
v buňce A1 je číslo 1
z něj vzorcem vyjedu název: list1 (=list&A1")
Znamená to,že list1 bude zobrazen a ostatní list2-list15 se skryjí.
Zkoušel jsem něco matlat, ale nebylo to ono.
zadám-li např. 5, list 1-5 bude zobrazen, 6-15 se skryjí.
Děkuji moc za kódy, já jsem v koncích.
Děkuji předem.
elninoslov(31.3.2020 23:19)#046317 Private Sub Worksheet_Change(ByVal Target As Range)
Dim ws As Worksheet, Name As String, iName As Integer, vShow, iShow As Integer
If Not Intersect(Range("A1"), Target) Is Nothing Then
vShow = Range("A1").Value
If Not IsEmpty(vShow) And IsNumeric(vShow) Then
iShow = Val(vShow)
Application.ScreenUpdating = False
For Each ws In ThisWorkbook.Worksheets
With ws
Name = Replace(.Name, "List", "")
If Name <> "Master" And IsNumeric(Name) Then
iName = Val(Name)
If iName <= iShow Then .Visible = xlSheetVisible Else .Visible = xlSheetHidden
End If
End With
Next ws
Application.ScreenUpdating = True
End If
End If
End SubPříloha: 46317_showhidelists.zip (25kB, staženo 19x) citovat
hard(1.4.2020 0:59)#046318 To je úžasné, jste bůh!
Děkuji moc!
citovat