|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
07.11.2010, 22:24 | #1 |
Пользователь
Регистрация: 02.11.2010
Сообщений: 55
|
запретить сделанные изменения
помогите довести до ума скрипт:
Private Sub Document_Open() If Day(Date) >= "12.01.2010" Then Selection.WholeStory Selection.Text = StrReverse(Selection.Text) ActiveDocument.Save ?? End If End Sub какой саб запретит отмену операции и дальнейшие изменения документа ?? |
09.11.2010, 08:03 | #2 |
Форумчанин
Регистрация: 29.09.2008
Сообщений: 378
|
Учтите, что Document_Open работает по разному когда находиться в документе и когда в шаблоне.
Также не факт, что открытый документ является активным. А значит, используя Selection и ActiveDocument можно попортить чужой документ. Лучше использовать ThisDocement. Защита документа от изменений: Код:
Макросы на заказ и готовый пакет - http://mtdmacro.ru/
|
09.11.2010, 16:22 | #3 |
Пользователь
Регистрация: 02.11.2010
Сообщений: 55
|
Спасибо за дельные советы!
как быть, если нужно не просто запретить редактирование, а в такой последовательности:
1. после наступления указанной даты перевернуть символы 2. сохранить документ без спроса и 3. запретить редактирование и дальнейшее сохранение 4. при попытках 3 - активировать обращение к собственнику (по мылу или др.) - напоминающий, что платежка-то еще не прошла 5. в случае нарушения 3 - удалить документ без спроса мимо корзины Суть в том что результат моей работы - расчет в экселе и отчет в ворде. Расчет - это как исходник для программиста - его я удаляю после истечения даты сразу, минуя корзину. В экселе работает такой код: Private Sub Workbook_Open() ActiveWindow.DisplayWorkbookTabs = True If Date <= #12/01/2010# Then Exit Sub With ThisWorkbook .Saved = True .ChangeFileAccess xlReadOnly On Error Resume Next Kill .FullName .Close False End With End Sub А doc - это всего лишь куча букаф, поэтому надо чтобы против переворачивания теста была рабочая таблетка, нужен более гибкий макрос. И у меня получается цикличность нелепая: - открыл документ - текст реверснулся-сохранился-запрет исправлений.. - открыл - текст вернулся - и т.д.... Последний раз редактировалось npocmop; 09.11.2010 в 16:51. Причина: добавление |
09.11.2010, 19:36 | #4 |
Форумчанин
Регистрация: 29.09.2008
Сообщений: 378
|
Приблизительно так:
Код:
Макросы на заказ и готовый пакет - http://mtdmacro.ru/
Последний раз редактировалось Вождь; 09.11.2010 в 19:50. |
09.11.2010, 20:51 | #5 |
Пользователь
Регистрация: 02.11.2010
Сообщений: 55
|
Muchas Gracias, Вождь!
Спасибо, всё работает и довольно шустро коверкает довольно объемные файлы.
Представляю лица жадин их тоже улыбнёт, тока не сразу Веселый получился скрипт.. он будет нести с собой улыбки Может еще заменять графики на удивленные фото с вебкамер ноутов пользователей - тока подловить момент исполнения StrReverse . Такое вообще возможно в среде vb ? |
10.11.2010, 03:30 | #6 |
Форумчанин
Регистрация: 12.11.2009
Сообщений: 258
|
вопрос кому это надо ? снимается это блокировка на раз софтом широко доступным в сети. так что кому будет нужно - документ сдраконят
|
10.11.2010, 04:54 | #7 |
Пользователь
Регистрация: 02.11.2010
Сообщений: 55
|
ну и что, сам тоже люблю подраконить - ломать не строить
Зато не каждый статичный бухгалтер заказчиков будет нахаляву получать методики и подходы. Бывало частенько, особенно крупные компании, блин, их продукцию полстраны потребляет, а они жмутся и давятся людям за работу оплатить.. жаль только что все эти вещи работают после разрешения включения макросов.. я так понимаю что все методы автоматизации таких скриптов больше похожи на уловки типа: нажми на кнопку получишь на водку |
10.11.2010, 06:33 | #8 |
Форумчанин
Регистрация: 29.09.2008
Сообщений: 378
|
В версиях Word, где есть хорошая защита документа от взлома и защита макросами делается на раз. Для этого достаточно реализовать принцип "с отключенными макросами документ недоступен". Достигается это тем, что макрос и разблокирует документ, а пока макрос не запустишь - кукиш тебе
Макросы на заказ и готовый пакет - http://mtdmacro.ru/
|
10.11.2010, 08:50 | #9 |
Пользователь
Регистрация: 02.11.2010
Сообщений: 55
|
а намекните хотя бы как
... языком vba Последний раз редактировалось npocmop; 10.11.2010 в 09:47. |
10.11.2010, 10:29 | #10 |
Форумчанин
Регистрация: 29.09.2008
Сообщений: 378
|
Так реализация может быть любой, а идею я изложил. Например, достаточно защитить документ паролем и вставить пару макросов:
Код:
Макросы на заказ и готовый пакет - http://mtdmacro.ru/
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Скрыть или запретить для изменения | nicuav | Microsoft Office Excel | 17 | 16.02.2012 02:22 |
Запретить сворачивание формы | voron.kz | Помощь студентам | 3 | 05.11.2010 09:07 |
Запретить редактирование в DBGrid | MixanMM | БД в Delphi | 12 | 10.05.2010 20:28 |
Запретить изменения Книги после истечения месячного срока | komar73 | Microsoft Office Excel | 0 | 31.03.2009 11:01 |