RSS    

Видеокурсы

Видеокурсы по ВТ

Опасности в социальных сетях

Социальные сети



Excel: как запретить изменение данных в файле за прошедшие даты

При работе с файлами Excel, особенно находящимися в общем доступе и редактируемыми несколькими пользователями, возникает проблема защиты данных от изменения за прошедшие даты. Инструменты Excel не предусматривают такой возможности, как защита ячеек относительно даты. В этом случае поможет макрос. 

КОД:

Dim val, flag, f_val, f_row, f_column As Variant

 

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)

 

    Application.EnableEvents = False

     

    Set reg_date = CreateObject("VBScript.RegExp")

    reg_date.Pattern = "\d\d\.\d\d\.\d\d\d\d"

    flag = reg_date.Test(f_val)

     

    If (f_val < Str(Date)) And (Cells(f_row, f_column).FormulaLocal <> val) And (flag = True) Then

        Cells(f_row, f_column).Value = val

        MsgBox ("Редактирование запрещено.")

    End If

     

    Application.EnableEvents = True

     

End Sub

 

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)

 

    val = ActiveCell.Text

    f_row = ActiveCell.Row

    f_column = ActiveCell.Column

    f_val = Cells(f_row, 1).Text

     

End Sub

 

Чтобы воспользоваться макросом, необходимо открыть нужный файл. Затем щелкнуть по названию листа правой кнопки мышки и нажать Посмотреть код (или Исходный текст). 

e1

Откроется окно VBA для вставки макроса. Выберите в левом поле Эта книга. Вставьте в белое поле скопированный код.

e2

 

Затем файл сохраните, нажав на кнопку Сохранить тут же, в окне VBA. 

E3

Лучше при сохранении выбрать тип файла С поддержкой макросов

E4

 

Теперь проверьте, попытайтесь изменить что-либо в ячейках, относящихся к прошедшей дате.

Оставьте свой отзыв:

Добавить комментарий


Защитный код
Обновить

 

Самое читаемое:

Быстрый поиск

Группа вКонтакте: новости

 

Новости в Twitter и Facebook

  подписка на новости в twitter              Подписка на новости facebook

Инструкции к программам

Инструкции к программам

Новые информационные технологии и программы