|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
27.04.2011, 18:12 | #1 |
Пользователь
Регистрация: 26.06.2008
Сообщений: 55
|
Заблокировать книгу
Добрый день,
Подскажите пожалуйста как сделать что если один пользователь зашел в книгу и работает в ней, второй не мог бы в нее зайти даже в режиме чтения? Есть програмный код Private Sub Workbook_Open() If Workbooks.Count > 1 Then ThisWorkbook.Close End Sub Но он не дает открыть файл если открыт еще один Excel, а мне нужно чтобы нельзя было открыть файл если в нем уже кто-то сидит Спасибо |
28.04.2011, 17:26 | #2 |
Пользователь
Регистрация: 26.06.2008
Сообщений: 55
|
Мне подсказали что это можно сделать следующим образом:
Можно при открытии книги создавать индикаторный файл с тем же именем в этой же папке, а перед закрытием книги удалять его. Ворд так делает. Соответственно, при открытии книги проверять наличие наличие индикаторного файла, и если он есть, говорить юзеру "извините, занято" и закрывать файл. Все будет хорошо, пока файл будет закрываться штатно. На случай аварийного закрытия Экселя (тогда индикаторный файл останется) можно анализировать дату создания индикаторного файла: если он старше, скажем, 3 часов, то игнорировать его. Как это прописать все програмно что-то мне в голову совсем не приходит. Подскажите пожалуйста Спасибо |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
заблокировать сайты | Pein95 | Работа с сетью в Delphi | 6 | 17.03.2011 14:41 |
как заблокировать страницу | voldemen | HTML и CSS | 6 | 10.05.2010 15:32 |
Заблокировать форму | alco84 | Microsoft Office Access | 1 | 08.04.2010 16:21 |
Заблокировать клавиатуру | Son | Win Api | 5 | 12.03.2010 04:27 |
Заблокировать запись | Yoger | БД в Delphi | 4 | 15.02.2007 14:19 |