Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.12.2012, 22:29   #1
Евроснаб
Новичок
Джуниор
 
Регистрация: 03.12.2012
Сообщений: 9
Радость Сортировка + защита ячеек

День добрый!
Нужна помощь для правильной работы отчетного файла в Excel 2003.
Во вложенном файле сконструированный мною отчет, который составлялся на основе моих скудных знаний. Для кого-то он может показаться запутанным, но для меня и других сотрудников хороший инструмент.
В макросах и в составлении заурядных формул я не силен! Возможно его можно было составить проще!
.
Итак что нужно! Необходима возможность стандартной сортировки строк (от А до Я) в диапазоне "A6:AC100" по данным всего в одном столбце "Дн." по данным "O6:O100". Да, задача несложная, нажал сортировку и готово. Но! в заданном диапазоне необходимо ставить защиту ячеек, вернее некоторых столбцов (пометил их красным), чтоб новички случайно не испортили файл. Защита блокирует сортировку, даже при разрешенной сортировке. Возможно макросом можно как-то реализовать, но я в них вообще не разбираюсь. Пробовал, что-то применить из форума и адаптировать, не получилось!
.
Краткое описание вложенного файла:
Создал файл с двумя вкладками зеленого и красного цвета.
В зеленой обычный рабочий файл без защиты в котором осуществляю сортировку по столбику "Дн." который расположен почти в центре и показывает сколько дней осталось до завершения сделки. Процесс сортировки происходит так: записываю новую сделку с известными датами её закрытия, нажимаю на любую ячейку столбика и "сортировка А-Я", все завершенные сделки опускаются вниз таблицы, а незавершенные выстраиваются в порядок.
В красной вкладке я отобразил скрытые столбцы и пометил красным все, что необходимо защитить от случайного стирания, изменения, а также от просматривания формул. И поставил защиту (без пароля).
Вот такая у меня задачка
.
Вложения
Тип файла: rar Сортировка_и_защита.rar (106.3 Кб, 12 просмотров)

Последний раз редактировалось Евроснаб; 04.12.2012 в 18:48.
Евроснаб вне форума Ответить с цитированием
Старый 04.12.2012, 11:57   #2
Fordros
Пользователь
 
Регистрация: 26.06.2012
Сообщений: 89
По умолчанию

Я так понял что нужна только сортировка определенного диапазона, при установленной защите листа. Если да, то можно воспользоваться макросом снятия защиты, сортировкой и опять же установлением пароля.

Смотрите вложение...
Вложения
Тип файла: rar Сортировка_и_защита.rar (106.9 Кб, 13 просмотров)
Fordros вне форума Ответить с цитированием
Старый 04.12.2012, 18:58   #3
Евроснаб
Новичок
Джуниор
 
Регистрация: 03.12.2012
Сообщений: 9
По умолчанию

Спасибо за ответ и пробный пример! Но я не смог разобраться как это работает, выдает ошибки и календарь сломался для ввода дат! И кстати работа файла перестала полноценно работать и стандартный фильтр тоже не работает!
.
Может сделать как-то проще без кнопки, чтоб она автоматически сортировала!
Или я даже допускаю чтоб сотрудники сортировали стандартной сортировкой, но при защите. Вот весь вопрос в том и стоит что сортировать надо без снятия защиты. Другими словами, - сами сотрудники сортируют отчет и при этом должна работать защита которую они не могут снять. Как быть?
Евроснаб вне форума Ответить с цитированием
Старый 04.12.2012, 23:39   #4
gling
Форумчанин
 
Регистрация: 23.01.2010
Сообщений: 261
По умолчанию

создайте копию листа для сотрудники и пусть они косорезят что хотят, если они не вносят новой информации. ваш лист будет без изменений. можно поставить пароль для их входа. дерзайте.
gling вне форума Ответить с цитированием
Старый 04.12.2012, 23:49   #5
Евроснаб
Новичок
Джуниор
 
Регистрация: 03.12.2012
Сообщений: 9
По умолчанию

Цитата:
Сообщение от gling Посмотреть сообщение
создайте копию листа для сотрудники и пусть они косорезят что хотят, если они не вносят новой информации. ваш лист будет без изменений. можно поставить пароль для их входа. дерзайте.
.
Ну вы же не знаете всей задачи и как дальше работает система отчетности на предприятии. Как раз то что Вы написали и рядом не стоит с необходимым решением. У каждого свой самостоятельный отчет у меня соответственно свой по своим сделкам, каждый работает в своем, сортирует и сдает по окончанию месяца в отдел статистики.
Евроснаб вне форума Ответить с цитированием
Старый 05.12.2012, 00:01   #6
gling
Форумчанин
 
Регистрация: 23.01.2010
Сообщений: 261
По умолчанию

не зная полной задачи, нельзя дать полный ответ. можно сделать чтоб сортировка включалась - по закрытию, открытию документа, нажатию кнопки, изменению в ячейке, строке, столбце и.т.д. сначала определитесь что хотите, правильно поставленная задача 50% её решения. поставьте себе задачу правильно и вы её сами решите без помощи. если не получится пишите.
gling вне форума Ответить с цитированием
Старый 05.12.2012, 00:51   #7
Евроснаб
Новичок
Джуниор
 
Регистрация: 03.12.2012
Сообщений: 9
По умолчанию

Прочитайте внимательно самое первое моё писание. Куда ещё подробнее?
Там всё четко понятно, что сортировать надо весь диапазон "A6:AC100" всего лишь по данным одного столбца "O6:O100" в котором меняется информация (даже цветом специально выделил). По мере нового изменения необходимо применять фильтрацию, чтоб строчка встала на своё место. Но при этом одновременно должна быть включена защита.
Из написанного мной выше должно быть понятно, что сортировка и защита должны сотрудничать совместно на листе без отключения защиты.
На сей момент стандартной сортировки Экселя А-Я достаточно, но при включеной защите сама защита блокирует эту функцию. Как её обхитрить эту защиту, вот этого я не знаю ...
Евроснаб вне форума Ответить с цитированием
Старый 05.12.2012, 08:42   #8
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

В модуль книги:
Код:
Private Sub Workbook_Open()
    Sheets("Сделки_с_защитой").Protect userinterfaceonly:=True
End Sub
В лист:
Код:
Sub Сортировать()
     [A6:AC100].Sort Key1:=Range("o6"), Order1:=xlAscending, Header:=xlNo
End Sub
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Старый 05.12.2012, 09:36   #9
Евроснаб
Новичок
Джуниор
 
Регистрация: 03.12.2012
Сообщений: 9
По умолчанию

Спасибо "kuklp"
.
Вставил весь код куда написали, думаю, что не допустил ошибок, но не работает. Всё работает именно так как будто я ни чего не изменял.
Может какие-то настройки Excel надо сделать? у меня Excel 2003 версия
Евроснаб вне форума Ответить с цитированием
Старый 05.12.2012, 09:45   #10
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Ваш файл. Ткните кнопку.
Вложения
Тип файла: rar Сортировка_и_защита.rar (108.9 Кб, 27 просмотров)
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Защита ячеек в эксель.. Ubicum Microsoft Office Excel 8 26.10.2012 14:56
Защита ячеек Lyuda_! Microsoft Office Excel 3 17.11.2011 02:56
Защита ячеек Анна1703 Microsoft Office Excel 10 08.02.2010 10:32
Защита ячеек Levchik Microsoft Office Excel 1 02.02.2009 08:15
Защита ячеек от вырезания и копирования Freerider1972 Microsoft Office Excel 1 23.12.2008 20:57