Hur man förhindrar att din Excel-arbetsbok flyttas eller kopieras

Datastöld kan minimeras genom att inaktivera olika meny- och högerklickfunktioner i Excel. Vi diskuterar nedan hur man gör detta med VBA.

Det antas att läsaren visar Excel Developer-bandet och är bekant med VBA Editor.

Användargränssnittet

Bygg ett kalkylblad med två knappar och lite data.  Bygg ett kalkylblad med två knappar och lite data

Det här arket kommer att visas sitt band och all rätt_klickfunktionalitet som Excel ger.

Arket finns tillgängligt här..

VBA-koden

Det finns en mängd olika kommandofältkontroller som kan inaktiveras. Du måste söka på Google efter ID-nummer för dessa kontroller. Vi kommer att använda ID 19 och 21 för denna övning.

Sub Auto_Open()    ‘Auto_open runs automatically when the workbook is opened
    Dim Control As Office.CommandBarControl

    Application.CommandBars("ply").Enabled = False     'disables right-Click on sheet tab

    For Each Control In Application.CommandBars.FindControls(ID:=21)    'disables CUT
        Control.Enabled = False
    Next Control

    For Each Control In Application.CommandBars.FindControls(ID:=19)     'disables COPY
        Control.Enabled = False
    Next Control
    Application.CellDragAndDrop = False
 
    Application.ExecuteExcel4Macro "Show.ToolBar(""Ribbon"", False)"     'Hides ribbon
End Sub

Sub Restore()
    Application.CommandBars("ply").Enabled = True     'enables right-click on sheet tab

    Dim Control As Office.CommandBarControl

    For Each Control In Application.CommandBars.FindControls(ID:=21)     'enables CUT
        Control.Enabled = True
    Next Control

    For Each Control In Application.CommandBars.FindControls(ID:=19)     'enables COPY
        Control.Enabled = True
    Next Control
    Application.CellDragAndDrop = True

    Application.ExecuteExcel4Macro "Show.ToolBar(""Ribbon"", True)"     'shows ribbon
End Sub

Sub Auto_close()    
    Call Restore    ‘Ensure other workbooks work properly
End Sub

Tilldela återställningsknappen till subåterställning och inaktivera-knappen till Auto_open.

Kör Auto_open-koden; du kommer att notera att Klipp och kopiera är inaktiverade på högerklickmenyn och att menyfliksområdet har försvunnit. Du kommer inte heller att kunna flytta arket till en annan arbetsbok från arkfliken.Tilldela Inaktivera-knappen till Sub Auto_open

Det kommer alltid att finnas vägar kring dessa försiktighetsåtgärder, men syftet är att göra det svårt för alla utom den allvarliga hackaren; att skydda kalkylbladet är ytterligare en avskräckande effekt, liksom att säkerställa att det inte kan kopieras direkt från en undermapp.

Slutligen, skydda din kod från att visas eller ändras:  Verktyg> Egenskaper> Skydd.

Excel-filkorruption

”Jag har lurat filen; nu upplever jag Excel-fel utan märkbar anledning. Men jag förväntar mig fortfarande att vara klar idag. ”

Om detta har ett lyckligt slut eller inte beror på huruvida användaren har ett effektivt verktyg tillgängligt som reparera Excel. I det här fallet hade kalkylarket mer än 90,000 XNUMX rader.

Författarintroduktion:

Felix Hooker är en dataåterställningsexpert i DataNumen, Inc., som är världsledande inom teknik för återställning av data, inklusive reparera rar och mjukvaruprodukter för SQL-återställning. För mer information besök www.datanumen.com

Kommentarer är stängda.