Hirdetés

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

  • KaliJoe

    tag

    Sziasztok,
    Több kérdésem is van, próbálom röviden megfogalmazni:
    3. Az alábbi kis programot írtam:

    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Válasz_byt As Byte
    If Target.Cells = Range("B4") Or Target.Cells = Range("B5") Then
    If Target.Cells = Range("B4") Then
    Range("B6").Select: Selection.ClearContents
    Range("B5").Select: Selection.ClearContents
    Válasz_byt = MsgBox("Mivel a személy nemét megváltoztattad, alaphelyzetbe (vagyis üresbe) állítottam a 'Kora' (korosztály) és a 'Módosító tényező' cella értékeit.", vbOKOnly + vbExclamation, "Kor-Módosító alaphelyzetbe")
    End If
    If Target.Cells = Range("B5") And Range("B6") <> Emtpy Then
    Range("B6").Select: Selection.ClearContents
    Válasz_byt = MsgBox("Mivel a személy korát megváltoztattad, alaphelyzetbe (vagyis üresbe) állítottam a 'Módosító tényező' cella értékét.", vbOKOnly + vbExclamation, "Módosító tényező alaphelyzetbe")
    End If
    Range("B2").Select
    End If
    End Sub

    Többé kevésbé jól is működik. Azért mondom, hogy többé kevésbé, mert ha a B4 cellát változtatja meg a felhasznló, akkor meg fogja magát hívni újra, amikor a makró a B5 cella tartalmát törli, de ezt nagyjából megkerültem. Ha elegánsabb megoldást tudtok, szívesen alkalmaznám. A Munkafüzetem több Munkalapot tartalmaz, ez csak az egyikre érvényes. Az igazi kérdésem az az, hogyha makróval egy másik Munkalapról kiindulva, ezen a munkalapon - haosnlóképpen a fenti programhoz - törölni akarom a B4-B5-B6 tartalmát, akkor hogy tudom majd elkerülni az önmagát meghívó törli makró működését. Másképpen fogalmazva: programból (makróból) ki lehet kapcsolni - időlegesen, aztán vissza - egy adott munkalapon a Change esemény figyelését?

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