Keresés

Új hozzászólás Aktív témák

  • Mutt

    senior tag

    válasz Mittu88 #19539 üzenetére

    Hello,

    Kiegészítheted a korábbi makrót ezzel a sorral.

    Worksheets("masik lap").Columns("A:D").AutoFilter Field:=1, Criteria1:=Range(cella).Value

    Így lefut a szűrés minden alkalommal.
    A gond, hogy pont emiatt erőforrás pazarló, ezért egy kicsit lehet hangolni rajta:
    Dim EredetiErtek
    Const cella As String = "A2"

    Private Sub Worksheet_Calculate()

    'kikapcsoljuk az eseménykezelést, mivel a következősor újabb eseményt (change) indítana el
    Application.EnableEvents = False
    'értéket másolunk eggyel a keresett cella alá
    Range(cella).Offset(1).Value = Range(cella).Value
    'eseménykezelést visszakapcsoljuk
    Application.EnableEvents = True

    End Sub

    Private Sub Worksheet_Change(ByVal Target As Range)

    'csak akkor engedjük futni a szűrést, ha változott a szűrési feltétel
    If EredetiErtek <> Range(cella).Value Then
    Worksheets("UDF").Columns("A:D").AutoFilter Field:=1, Criteria1:=Range(cella).Value
    EredetiErtek = Range(cella).Value
    End If

    End Sub

    üdv

    A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel

Új hozzászólás Aktív témák