Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Как запретить сортировку выделенных диапазонов, но при этом разрешить сортировку строк целиком?
 
Меня интересует возможность программного решения средствами Excel.
Как запретить сортировку выделенных диапазонов, но при этом разрешить сортировку строк целиком?
 
Благодарю. Это, повторюсь - упрощённый пример, где я хотел продемонстрировать суть проблемы. В моём же файле шапка есть, все ячейки шапки - защищаемые, изменять их нельзя, страница под паролем. Но ситуация та же - если выделять не строки целиком, а диапазон (например ту часть, которая влезает в экран, как порой и делают) и затем сортировать, то можно всё сбить.
Файл как раз-таки в общем доступе, в него пользователи вносят данные и сортируют время от времени.
Насчёт нумерации строк, не уверен, что от этого будет какой-то толк, сортировка осуществляется по трём конкретным столбцам.
Как запретить сортировку выделенных диапазонов, но при этом разрешить сортировку строк целиком?
 
Вот упрощённый пример для наглядности
Как запретить сортировку выделенных диапазонов, но при этом разрешить сортировку строк целиком?
 
Так и не надо ничего угадывать. Надо не допустить искажений данных, которые происходят при выделении диапазонов, охватывающих только часть информации, и последующей их сортировке, а не строк целиком.
Изменено: korshunn - 04.02.2013 08:59:03 (добавил важный момент)
Как запретить сортировку выделенных диапазонов, но при этом разрешить сортировку строк целиком?
 
Таблица с большим фиксированным количеством столбцов, которую нужно сортировать. Хочется, чтобы для этого выделяли строки целиком. Но иногда выделяют диапазоном и применяют сортировку, из-за чего информация сортируется только в выделенных столбцах, а в остальных - нет. При этом, естественно, данные "разъезжаются", что недопустимо.
То есть, необходимо запретить сортировку выделенного и разрешить сортировку строк целиком.
Возможно ли "безмакросное" решение?
Как передать значения переменных в макрос?
 
Кнопка "Добавить" нужна, т.к это будет не единственная кнопка. Ещё понадобятся "Изменить", "Удалить" и др. :-)  
Плюс если в ячейку вводят скопированный, например с веб-страницы, текст (методом Ctrl-C, Ctrl-V к примеру), то автоматом копируется и его формат - шрифт, цвет и пр. Неопытным пользователям приходится долго объяснять, как этого избежать. А с InputBox такой проблемы нет.  
Спасибо всем за помощь. The_Prist за то, что ответили на мой вопрос. Юрий М за более компактный метод.
Как передать значения переменных в макрос?
 
Спасибо, обязательно воспользуюсь советом по упрощению кода по части проверок. Но охота всё-таки, чтоб по кнопочке-макросу подсказали.  
Вот, покажу на примере одной переменной (из моего кода):  
 
If Target.Address = "$B$3" Then  
 ImyaSpiska = "Красноярск"  
 
т.е. при активации ячейки B3 (с выбором ФИО участника из г. Красноярск) переменной ImyaSpiska присваивается значение "Красноярск". Допустим мы хотим добавить нового человека в этот список. Жмём кнопку Добавить, вызывающую макрос addfio:  
 
Sub addfio()  
Dim NewFIO As String  
NewFIO = InputBox("Введите ФИО участника от " & ImyaSpiska)  
...  
 
отображается диалоговое окно ввода InputBox. Но там вместо надписи  
 
"Введите ФИО участника от Красноярск"  
 
видим просто  
 
"Введите ФИО участника от "  
 
Что говорит о том, что макрос addfio не в курсе того, что есть такая переменная ImyaSpiska, которой только что в основной процедуре присвоили значение "Красноярск".  
Вот в этом-то и вопрос, как правильно сделать, чтоб при вызове макроса, он работал со значениями переменных, заданными в основной процедуре?
Как передать значения переменных в макрос?
 
Да, смотрел. Именно на основании этого метода возникла идея сделать нечто похожее, но с использованием формы "Кнопка".  
Описанный там метод не очень удобен тем, что после ввода нового имени, для вызова диалога о добавлении его в список, нужно сперва "выйти" из этой ячейки, а затем снова её активировать.  
А если например ещё реализовывать функцию правки уже добавленных элементов списка, то тут тоже удобней была бы кнопка с макросом, моё мнение.  
 
Но вопрос не в том, что и как лучше, а в том, как макрос под кнопкой заставить пользоваться переменными, задаваемыми в основной процедуре???
Как создать скриншот ???
 
В общем случае, скриншот делается нажатием клавиши Print Screen (верхний правый угол клавиатуры). Затем открываем редактор Paint, жмём Ctrl+V (вставить), всё лишнее можно тут же обрезать.
Как передать значения переменных в макрос?
 
Ситуация такая: книга из 5 листов. На основном листе таблица из 2х столбцов: город (4 шт.) и ФИО участника из данного города.  
На остальных 4х листах - соответствующие каждому городу списки ФИО участников (именованные диапазоны).  
ФИО выбираются из выпадающих списков, организованных с помощью "Данные -> Проверка -> Список -> =имя_соотв_диапазона"  
На основном листе хочу сделать кнопку (форма) "Добавить нового участника", макрос которой вызывает диалоговое окно с полем ввода ФИО и добавляет введённое значение в соответствующий диапазон.  
Код основного листа присваивает значения переменным, описывающим имя и местонахождение необходимого диапазона. Т.е. если активна ячейка с ФИО участника из г. Барнаул, переменной ImyaSpiska присваивается значение "barnaul" и тд.  
Не могу понять, как ПЕРЕДАТЬ ЗНАЧЕНИЯ ПЕРЕМЕННЫХ с основного листа В МАКРОС, который вызывается нажатием вышеуказанной кнопкой "Добавить..". Другими словами, как сделать так, чтобы кнопка "понимала", с какой ячейкой происходит действие и какой дипапазон значений ей соответствует.  
Помогите разобраться, пожалуйста! Свой файл прилагаю.
Страницы: 1
Наверх