Я должен отсортировать защищенный лист и выполнить танец «незащищать-сортировать-защитить».
Проблема заключается в том, что я дублирую (не совсем идеально) собственную функцию сортировки в Excel с предсказуемыми проблемами.
Я установил защищенный лист и включил «Сортировку» в «Разрешить пользователям этого листа» в окне «Защитить лист», но это не работает должным образом.
Я думал тогда попытаться открыть диалог сортировки в Excel (см. Ниже). Это выставлено нам разработчикам?
Ответы:
Попробуйте использовать автофильтр. Это позволит вам защитить лист и позволить пользователю сортировать столбцы.
источник
Откроется диалоговое окно «Сортировка» (протестировано на XL 2010). Если текущий выбор не содержит сортируемый контент, он покажет Msgbox с сообщением об ошибке. Имейте в виду, что если выбран весь столбец, пользователь не будет расширять свой выбор, как это обычно делает Excel. Один из вариантов заключается в выборе параметра UsedRange или другого диапазона перед отображением диалогового окна. Вы хотите экспериментировать.
В Excel 2007 включен новый объект Sort, в котором хранятся поля, подлежащие сортировке, но я не вижу, как он взаимодействует с этим диалогом, если он вообще существует.
Вы можете найти список аргументов xlDialogSort здесь .
источник