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
  • Buňka musí obsahovat řetězec, aby se zapnul rozbalovací seznam
    od Marines93 » 02 lis 2024 09:44 » v Kancelářské balíky
    0
    2439
    od Marines93 Zobrazit poslední příspěvek
    02 lis 2024 09:44
  • ComboBox v Excelu kopírování Příloha(y)
    od LukM » 19 říj 2024 14:03 » v Kancelářské balíky
    0
    3028
    od LukM Zobrazit poslední příspěvek
    19 říj 2024 14:03
  • Problém s RAM
    od lukas222 » 04 lis 2024 13:52 » v Problémy s hardwarem
    4
    4882
    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
    5337
    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
    2771
    od Matyas.S Zobrazit poslední příspěvek
    02 pro 2024 20:30

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

Kdo je online

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