Telefonszámunk: 1-472-0679

Szerkesztés zárolása makró

Kezdőlap Fórumok Excel programozás Szerkesztés zárolása makró

3 bejegyzés megtekintése - 1-3 / 3
  • Szerző
    Bejegyzés
  • #9746
    kovacsl1968
    Felhasználó

    Sziasztok!
    Makró kérdés. Olyan makrót szeretnék létrehozni ami a következő műveletet végezné: ha a (pl.) X1 cella értéke = NYITVA, akkor a B1:C10 tartomány szerkeszthető, ha viszont átállítom az értéket arra, hogy ZÁRVA, akkor ugyanaz a tartomány nem szerkeszthető.
    Valakinek ötlete?

    #9747
    horvimi
    Adminisztrátor

    Szia!

    A munkalap onChange eseményéhez lehet megírni a zárolási vagy feloldási műveletet.
    Mit tudsz az Excel makrók eseménykezeléséről?

    Kicsit nézz utána, most csak ennyi időm volt.

    Imre

    #9928
    verax
    Felhasználó

    Szia kovacsI1968!

    Lépésenként
    Előkészületek:
    1. Jelöld ki azt a bizonyos “X1” cellát!
    2. Kezdőlap – Formátum – Cella formázása… Védelem fülön vedd ki a “Zárolt” jelölő négyzetből a pipát!
    3. Állítsd be “X1”-re érvényesítést. Ezt az Adatok menü – Érvényesítés parancsával teheted meg. Alt+Y, V, R
    3/a A megjelenő Beállítások fülön a “Bármilyen érték” helyett válaszd a “Lista” kifejezést!
    3/b A Forrás mezőbe írd ezt: NYITVA;ZÁRVA ezután [OK]

    Kódírás:
    1. Alt+F11. Ezzel beléptél a Microsoft Visual Basic felületre.
    2. Kattints duplán annak a munkalapnak a nevére, amelyiken az általad említett “X1” cella tartalmát szeretnéd figyelni! Ezzel megnyílik a kódszerkesztő ablak.
    3. A “(General)” szöveg lenyílóját változtasd át – nyisd le, válasz ki – “Worksheet”-re!
    4. Létre jött egy …

    Private Sub Worksheet_SelectionChange(ByVal Target as Range)
    
    End Sub

    kód részlet. Az üres sorban villog a kurzor.

    5. Ide írd a következő utasításokat:

    On Error GoTo HibaEsetén:
    If Sheets("Munka1").Range("X1").Value="NYITVA" Then
    ActiveSheet.Unprotect
    Else
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
    End If
    HibaEsetén:

    * természetesen a Munka1 név helyett a saját unkalapod nevét írd be!
    6. Bezárhatod a kódszerkesztőt és dolgozhatsz a munkalapon. Feltéve hogy NYITVA vagy. 😉

    üdvözlettel
    verax

    • A hozzászólás módosításra került: 6 days, 6 hours telt el-verax.
    • A hozzászólás módosításra került: 6 days, 6 hours telt el-verax.
3 bejegyzés megtekintése - 1-3 / 3
  • Be kell jelentkezni a hozzászóláshoz.