Keresés

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

  • Fferi50

    Topikgazda

    válasz Lasersailing #50282 üzenetére

    Szia!
    Az eseménykezelés letiltása (Application.EnableEvents) sajnos a formra nem terjed ki, így kicsit kerülő úton lehet elérni az esemény "letiltását".
    Kell egy publikus logikai változó a userform modul lapjára, aminek a hamis v. igaz értéke szerint fut le az esemény kezelés.
    Amikor makróval változtatod az értéket, a változás előtt a logikai változó értékét beállítod, majd utána vissza, hogy a user változásokat le tudja kezelni.
    Pl.
    Userform1 modul lapon:
    Public fusson As Boolean
    _Change eseménykezelőben
    If fusson Then
    ' amit az eseménykezelőben szeretnél
    End If
    End Sub
    A makróban, bárhol van a makró:
    Sub Akarmi()
    ...
    Userform1.fusson=False '(Userform1 helyett a formod neve kell!)
    ... változtatások
    Userform1.fusson=True
    ...
    End Sub

    A Publikus változó helyes meghívása a Modulnév.Változónév, így egyértelmű a VBA számára, hogy melyik változóról van szó.
    Üdv.

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