VBA скрпт для excel

Павел18 років у сервісі
Дані замовника будуть вам доступні після подання заявки
11.11.2011

Нужен макрос VBA работающий по следующему алгоритму:

При открытии файла проверяем, есть ли файл status.pop в родительской папке (папка екселевского файла).

Если файл существует, тогда вывести на екран форму. Форма содержит:

-заблокированную кнопку Х (кнопка закрытия формы)

-прогресбар (можно символьный)

- лейбл "Файл открыт на другом компьютере, ожидайте закрытия..."

- кнопку "Не ждать и закрыть"

- кнопку "Открыть только для чтения"

Пока форма отображаеться на экране (прогресс бар в ней зациклен), идет проверка каждые 500 мс на существование файла status.pop в родительской папке. Как только status.pop не существует, делаем временную задержку 10 секунд, создаем status.pop (файл должен быть защищен от удаления) и открываем екселевский файл, сразу сохраняем его с пометкой только для чтения и закрываем форму. Пользователь может работать в файле.

При закрытии файла удаляем созданный status.pop, снимаем с екселевского файла статус "только для чтения"

На форме:

кнопка "Не ждать и закрыть"- закрывет файл - не удаляя файла "status.pop"

кнопка "Открыть только для чтения"- открывает екселевский файл без возможности сделать сохранение в исходный файл.

Это нужно для того что бы в ескелевский файл, пользователи на разных компьютерах не могли одновременно внести данные.

Заявки фрілансерів