Keresés

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

  • Delila_1

    veterán

    válasz Intel q8200 #46559 üzenetére

    Tegyük át a két makrót az egyes lapok helyett a ThisWorkbook laphoz.
    A VB szerkesztőben bal oldalon kattints a ThisWorkbook-ra, majd jobb oldalra másold be a két makrót.
    A füzet megnyitásakor ez a makró indul:
    Private Sub Workbook_Open()
       Dim oCtrl As Office.CommandBarControl
        Application.OnKey "^c", ""
        Application.OnKey "^x", ""
        Application.OnKey "^v", ""
        For Each oCtrl In Application.CommandBars.FindControls(ID:=21)
            oCtrl.Enabled = False
        Next oCtrl
        For Each oCtrl In Application.CommandBars.FindControls(ID:=19)
            oCtrl.Enabled = False
        Next oCtrl
        Application.CellDragAndDrop = False
    End Sub

    Bezárás előtt automatikusan pedig ez:
    Private Sub Workbook_BeforeClose(Cancel As Boolean)
        Dim oCtrl As Office.CommandBarControl
        Application.OnKey "^c"
        Application.OnKey "^x"
        Application.OnKey "^v"
        For Each oCtrl In Application.CommandBars.FindControls(ID:=21)
            oCtrl.Enabled = True
        Next oCtrl
        For Each oCtrl In Application.CommandBars.FindControls(ID:=19)
            oCtrl.Enabled = True
        Next oCtrl
        Application.CellDragAndDrop = True
    End Sub

  • Delila_1

    veterán

    válasz Intel q8200 #46379 üzenetére

    Nem kell jobb klikk. Ahogy a lapra lépsz, bekapcsolódnak a letiltások.
    Megszűnik a Ctrl+c, Ctrl+v, Ctrl+x, és a vonszolás.
    Másik lapra lépve engedélyeződnek, ami azt jelenti, hogy egy másik lapon minden működik.

  • Delila_1

    veterán

    válasz Intel q8200 #46377 üzenetére

    Egyúttal más funkciók letiltását és engedélyezését is leírom. Mindegyiket a laphoz kell rendelni, és a lap aktiválásakor lépnek életbe.

    Private Sub Worksheet_Activate()
        Dim oCtrl As Office.CommandBarControl
        'CTRL+C letiltása
        Application.OnKey "^c", ""
        'CTRL+X letiltása
        Application.OnKey "^x", ""
        'CTRL+V letiltása
        Application.OnKey "^v", ""
        'Cut menü letiltása
        For Each oCtrl In Application.CommandBars.FindControls(ID:=21)
            oCtrl.Enabled = False
        Next oCtrl
        'Copy menü letiltása
        For Each oCtrl In Application.CommandBars.FindControls(ID:=19)
            oCtrl.Enabled = False
        Next oCtrl
        
        'Vonszolás letiltása
        Application.CellDragAndDrop = False
    End Sub
    Private Sub Worksheet_Deactivate()
        Dim oCtrl As Office.CommandBarControl
        'CTRL+C engedélyezése
        Application.OnKey "^c"
        
        'CTRL+X engedélyezése
        Application.OnKey "^x"
        
        'CTRL+V engedélyezése
        Application.OnKey "^v"
        
        'Cut menü engedélyezése
        For Each oCtrl In Application.CommandBars.FindControls(ID:=21)
            oCtrl.Enabled = True
        Next oCtrl
            
        'Copy menü engedélyezése
        For Each oCtrl In Application.CommandBars.FindControls(ID:=19)
            oCtrl.Enabled = True
        Next oCtrl
               
        'Vonszolás engedélyezése
        Application.CellDragAndDrop = True
    End Sub

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

Hirdetés