Страницы: 1
RSS
Макросом вывести робочую книгу в защищеный просмотр
 
с помощю макроса можно включить рабочую книгу в защищенный просмотр? заметил когда книги включены замедляют работу макроса, а когда включен защищенный просмотр макрос работает быстрее на много быстрее  
 
Цитата
dxf написал:
когда включен защищенный просмотр макрос работает
вопрос в том, что именно макрос делает - ведь в защищенном просмотре нельзя ни копировать ячейки, ни даже обратиться к самой книге. Может у Вас там просто идет в коде где-то перед открытием On Error Resume Next  и макрос просто ничего не делает, вот и получается быстрее?
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
попытаюсь обяснить я работаю сразу с 5 и большэ книг проблема в том что приходится закрывать все кроме одной книги , чтоб макрос порабатал быстро ,а процедура закрытее занимает время закрыть и сохранить,потом запускаю на одной книге макрос с действиями он делает ,но потом мне нужно обратно открыть книги ,провести действия и обратно сохранить и закрыть, и так дальше , я хотел просто чтобы не сохранять а просто выводить в режим защищоный просмотр,чтобы оставить одну активную книгу ,просто при защищоном режиме макросы отключены на всех кроме одной ту что мне нужно , если мне нужно обратится к другой книге просто выключаю защищоный просмотр беру даные и включаю обратно защищоный просмотр,дело в том что книги имеет размер примером почти одинаковый,25000-30000 кб это я использую двоичный лист,и если открыто таких книг 5 и больше, эксель vba сильно тормозет, а когда одна книга, работает очень быстро , вот такая проблема и бывает выскакует окно недостаточно ресурсов нельзя сохранить, зарания спасибо , извиняюсь за свой руский
Изменено: dxf - 22.10.2019 13:17:58
 
тут пример файлов первый раз в защищоном режиме открываются а последуещи разы без защищоного режиму , ка сделать чтобы открывались постоянно в защищоном режиме, путь прописан в макросе  с диска d/  
 
Цитата
dxf написал:
я хотел просто чтобы не сохранять а просто выводить в режим защищоный просмотр
Вам не это надо. Вам надо на время работы макроса отключать автопересчет формул, обновление экрана, отслеживание событий и т.п. Здесь описывал основные методы ускорения: Как ускорить и оптимизировать код VBA
Попробуйте сначала сделать как там описано, глядишь и пытаться вводить файлы в защищенный режим желание пропадет :)
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
у меня когда работает макрос формулы нужны для перещота и подставления я немогу их отключить на выходе будет всё не правильно много ошыбок и потом прийдётся в ручную исправлять ,это что вы писали сделано обновления экрана  
Изменено: dxf - 23.10.2019 09:45:32
 
Пересчитывать можно только формулы в целевых диапазонах:
Код
Range("A1:A10").Calculate     'пересчитываем только диапазон ячеек А1:А10 на активном листе
Sheets(1).UsedRange.Calculate 'пересчитываем все используемые ячейки на первом листе активной книги
и т.п. А ввести файл в защищенный режим по факту нельзя(макросами, по крайней мере).
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
хорошо , а почему когда первый раз открываеш он в защищоном режиме , а последуещи нет , нащот ускорения сделано но тут проблема чтобы вывести с каждым сапуском книги защищоный режим , пусьть дажэ закрыть и открыть но второй раз когда запустить почему не выводит в защищоный режим
Изменено: dxf - 23.10.2019 10:42:26
 
Скрытый текст
В защищенном режиме книга открывается лишь первый раз - как только кнопка "Разрешить редактирование" была нажата для файла - то он больше не будет открываться в защищенном режиме до тех пор, пока его не переместят в другую папку(только не через Сохранить как, а копированием средствами ОС) и эта папка при этом не будет находиться в надежных расположениях.
Да и в любом случае проблему медленной работы кода надо решать правильными методами, а не манипуляциями с доступом к книге. Ни к чему хорошему это в итоге не приведет.
Цитата
dxf написал:
сделано обновления экрана
а там еще отключение отслеживания событий есть, разбиение на страницы и т.д. Хоть бы попробовали сначала все отключить и посмотреть на скорость работы - так хоть понятно было бы что именно влияет.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Цитата
dxf написал: каr сделать чтобы открывались постоянно в защищенном режиме, путь прописан в макросе  с диска d/
Код
Option Explicit

Dim w As ProtectedViewWindow

Sub OpenProtectedView()
  Set w = Application.ProtectedViewWindows.Open("D:\Книга1.xlsb")
End Sub

Sub EditProtectedView()
  w.Edit
End Sub
Изменено: ZVI - 15.11.2019 01:00:03
 
ZVI СПАСИБО работает отлично то что нужно
 
я извиняюсь а такой ? можно на активной книге это зделать примером я зделал действия и сохранил ,и нажать кнопку и фаил в активном режиме включется в режим просмотра,зарания спасибо,
 
Цитата
dxf написал: ...можно на активной книге это cделать...
Нет. Разве что закрыть и снова открыть, но нет в этом смысла. Дмитрий (The_Prist) уже объяснял, как правильно работать с книгами.
 
Offtop
Цитата
ZVI написал:
Дмитрий (The_Prist) уже объяснял, как правильно работать с книгами.
Нам не надо как правильно. Нам надо как хочется :D   Клиенто-ориентированность прежде всего!
 
Ну да, предварительный просмотр означает просмотр до редактирования, а после режима редактирования он уже не может быть предварительным
 
понял, спасибо огромное и за это, но  макрос ускорился при открытых книгах, всё получилось спасибо
Страницы: 1
Наверх