/ / Як відхилити структуру документа xlsx в Excel 2013 - excel, vba, excel-vba

Як зняти захист структури документів xlsx в Excel 2013 - excel, vba, excel-vba

У мене виникла проблема з моїм макросом, який не вдалося спробувати UnfreezePanes. Документ має захист структури: View> Protect Workbook> Захист структури та вікон (для версії 2013 року).

У версіях Excel до 2013 року у мене немає проблем з макросом:

Sub Unfreeze()
ActiveWorkbook.Unprotect
ActiveWindow.FreezePanes = False
End Sub

Але в версії 2013 року я зіткнувся з проблемою, коли «ActiveWorkbook.Unprotect» виконується без помилок, але не скасовує обмеження щодо зміни структури в документі, оскільки рядок newt ActiveWindow.FreezePanes = False кидає:

помилка 1004 "Визначена або визначена об'єктом помилка".

Крім того, кнопка FreezePanes на стрічці заблокована навіть після натискання кнопки «Включити редагування», які спливаючі вікна кожного разу при відкритті документа.

Увімкнути кнопку редагування

Після натискання кнопки "Увімкнути редагування" я йдудо VBE і запустити "ActiveWorkbook.Unprotect", а потім я все ще бачу, що документ захищений: Check> Protect Workbook> Структура. Тому мої спроби видалити захист не безпосередньо з цього вікна невдалі. Але! Я не можу видалити захист навіть з цього вікна! Коли я зніме прапорець "Структура", кнопка [Ok] стане небажаною! Захист не має пароля, тому що навіть коли я ввожу деякі символи в поле пароля, він все ще не може натиснути кнопку [Ok], тоді прапорець «Структура» не буде позначено.

Неможливо розблокувати

Зверніть увагу, що проблема відтворюється в Excel 2013, і це буде чудово, якщо ви порадите, як розблокувати документ за допомогою коду VBA.

Приклад документа можна знайти тут

Відповіді:

1 для відповіді № 1

Робоча книга може бути частково незахищеною, але вона зберігає цифровий підпис.

цифровий підпис

Клацніть Файл ► Інформація ► Захистити робочу книгу ► Додайте цифровий підпис для деталей. Зміна або вилучення з нього взагалі швидко відновили можливість заморожування / розморожування панелей.


0 для відповіді № 2

З Excel-файлами з попередніх версій Excel я мав активну таблицю. Unprotect змінити активну таблицю в E2013.

Може бути, якщо ви спробуєте кваліфікувати виклик, щоб зняти захист з ім'ям робочої книги і тим самим з викликом freezepanes?

Я не протестував це.