Makro v Excelu - buňka s aktivním filtrem PROBLEM

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

Moderátor: Mods_senior

Transmit
nováček
Příspěvky: 29
Registrován: leden 10
Pohlaví: Muž
Stav:
Offline

Makro v Excelu - buňka s aktivním filtrem PROBLEM

Příspěvekod Transmit » 02 úno 2010 09:09

Zdravim ještě jednou,

filtr se zvýrazněnou buňkou funguje, přestala ale fungovat klasická možnost volby ÚPRAVY - ZPĚT. Když makro s vybarvením buňky aktivního filtru smažu vše funguje..
Dá se to nějak spravit/obejít?

Díky za odpověď

Reklama
navstevnik
Level 4
Level 4
Příspěvky: 1142
Registrován: srpen 08
Pohlaví: Nespecifikováno
Stav:
Offline

Re: Makro v Excelu - buňka s aktivním filtrem PROBLEM

Příspěvekod navstevnik » 02 úno 2010 10:42

Procedura pouzita pro zvyrazneni aktivnich kriterii aut filtru ma za nasledek reset nastaveni Undo (ReUndo), takze lze mit bud zvyraznovani nebo Undo, nelze mit oboje.
Moznym resenim je na list vlozit Prepinaci tlacitko (z Panely nastroju>Ovladaci prvky>ToggleButton) a dle potreby toto tlacitko aktivovat/deaktivovat, pricemz procedura podle stavu bude zpri zmenach v nastaveni autofiltru patricne upravovat/neupravovat podbarveni bunek, v neaktivnim stavu lze pouzit Undo.

Ovladaci prvek ToggleButton - upravit:
Name: tggAF
Caption: "Aktivovat zvýraznění AF"
a upravena procedura:

Kód: Vybrat vše

Private Sub Worksheet_Calculate()
  Dim af As AutoFilter
  Dim fFilter As Filter
  Dim iFilterCount As Integer
  ' vyhodnoceni stavu prep tlacitka tggAF
  If Me.tggAF.Value Then
    If ActiveSheet.AutoFilterMode Then
      Set af = ActiveSheet.AutoFilter
      iFilterCount = 1
      For Each fFilter In af.Filters
        If fFilter.On Then
          af.Range.Cells(1, iFilterCount) _
          .Interior.ColorIndex = 6  'změnou čísla lze měnit barvu výplně (3-červená,5- modrá...)
            Else
          af.Range.Cells(1, iFilterCount) _
          .Interior.ColorIndex = xlNone  'zde se nastavuje barva výplně buňky s neaktivním filtrem
            End If
        iFilterCount = iFilterCount + 1
      Next fFilter
    Else
      Rows(1).EntireRow.Interior.ColorIndex = xlNone
    End If
  End If
End Sub

Nevylucuji, ze muze existovat i jine reseni celeho problemu zvyraznovani.
PS: napr. zvyraznovat stiskem tlacitka, nikoliv automaticky


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Problém s RAM
    od lukas222 » 04 lis 2024 13:52 » v Problémy s hardwarem
    4
    7760
    od lukas222 Zobrazit poslední příspěvek
    05 lis 2024 13:36
  • Problém s FPS
    od mcrakvar » 26 lis 2024 16:22 » v Vše ostatní (sw)
    4
    6788
    od petr22 Zobrazit poslední příspěvek
    28 lis 2024 10:06
  • Problém s fps spojený s gpu
    od Matyas.S » 02 pro 2024 20:30 » v Hry
    0
    3901
    od Matyas.S Zobrazit poslední příspěvek
    02 pro 2024 20:30
  • Problém se spuštěním PC
    od Viroxx » 27 led 2025 07:09 » v Problémy s hardwarem
    1
    2992
    od petr22 Zobrazit poslední příspěvek
    27 led 2025 07:19
  • Problém s monitorom
    od sloliv » 08 led 2025 04:55 » v Problémy s hardwarem
    8
    3413
    od sloliv Zobrazit poslední příspěvek
    08 led 2025 22:03

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

Kdo je online

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