Jak zapobiec przenoszeniu lub kopiowaniu skoroszytu programu Excel

Podziel się teraz:

Kradzież danych można zminimalizować, wyłączając różne funkcje menu i klikając prawym przyciskiem myszy w programie Excel. Poniżej omówimy, jak to zrobić za pomocą VBA.

Zakłada się, że czytelnik ma wyświetloną wstążkę programu Excel Developer i zna edytor VBA.

Interfejs użytkownika

Zbuduj arkusz roboczy z dwoma przyciskami i niewielką ilością danych.  Zbuduj arkusz roboczy z dwoma przyciskami i niewielką ilością danych

Ten arkusz będzie miał wyświetloną wstążkę i wszystkie funkcje right_click, które zapewnia program Excel.

Arkusz jest dostępny w tym miejscu.

Kod VBA

Istnieje wiele elementów sterujących paska poleceń, które można wyłączyć. Będziesz musiał wyszukać w Google numery identyfikacyjne tych elementów sterujących. W tym ćwiczeniu użyjemy identyfikatorów 19 i 21.

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

Przypisz przycisk Restore do podrzędnego Restore, a przycisk Disable do podrzędnego Auto_open.

Uruchom kod Auto_open; zauważysz, że Wytnij i Kopiuj są wyłączone w menu prawym przyciskiem myszy i że wstążka zniknęła. Nie będzie można również przenieść arkusza do innego skoroszytu z karty arkusza.Przypisz przycisk Wyłącz do Sub Auto_open

Zawsze będzie można obejść te środki ostrożności, ale celem jest utrudnienie wszystkim, z wyjątkiem poważnego hakera; Ochrona arkusza kalkulacyjnego jest kolejnym środkiem odstraszającym, a także zapewnia, że ​​nie można go skopiować bezpośrednio z podfolderu.

Na koniec chroń swój kod przed przeglądaniem lub zmianą:  Narzędzia> Właściwości> Ochrona.

Uszkodzenie pliku Excel

„Odszyfrowałem plik; teraz doświadczam błędów programu Excel bez zauważalnego powodu. Jednak nadal spodziewam się, że zakończę dzisiaj ”.

To, czy zakończy się to szczęśliwie, czy nie, może zależeć od tego, czy użytkownik ma dostępne skuteczne narzędzie napraw Excel. W tym przypadku arkusz kalkulacyjny miał ponad 90,000 XNUMX wierszy.

Wprowadzenie autora:

Felix Hooker jest ekspertem w dziedzinie odzyskiwania danych w DataNumen, Inc., która jest światowym liderem w technologiach odzyskiwania danych, w tym naprawa rar i oprogramowanie do odzyskiwania sql. po więcej informacji odwiedź www.datanumen.com

Podziel się teraz:

Możliwość dodawania komentarzy nie jest dostępna.