Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Порядок выполнения курсовой работы Exce-new2012...doc
Скачиваний:
1
Добавлен:
18.08.2019
Размер:
3.75 Mб
Скачать

Сортировка в особом порядке по полю «Наименование»

Для сортировки в особом порядке предварительно создается новый список из данных любого имеющегося столбца, который нужно отсортировать. Чтобы создать такой список, воспользуемся ранее созданным списком «Фрукты»:

  • выделим интервал J5:J9;

  • зададим для выделенных ячеек проверку вводимых значений (Данные/Проверка) с параметрами:

  • заполним интервал J5:J9 данными (введем все наименования из списка «Фрукты»);

  • выполним сортировку по столбцу «Наименование» по элементам пользовательского списка, которые находятся в ячейках J5:J9.

Для добавления пользовательского списка

  • выделяем ячейки J5:J9;

  • в MS Office 2003 выполняем команду Сервис/Параметры/Списки (в MS Office 2007 -нажимаем кнопку Microsoft Office, затем кнопку Параметры Excel, выбираем раздел Основные, а затем в группе Основные параметры работы с Excel следует установить флажок Изменить списки).

  • проверяем, что ячейки J5:J9 отображаются в поле «импорт списка»;

  • нажимаем кнопку «Импорт»;

  • либо нажимаем кнопку Добавить и вводим элементы списка в соответствующее поле, для разделения нажимая на клавишу Enter.

В макросе эти действия пользователя записываются в виде строки:

Application.AddCustomList ListArray:=Range("J5:J9")

Для удаления созданного списка используем команду Сервис/Параметры/Списки, в поле списки выделяем созданный ранее список и нажимаем кнопку «Удалить».

В макросе эти действия пользователя записываются в виде строки:

Application.DeleteCustomList ListNum:=5

Для проведения особой сортировки по столбцу «Наименование» по возрастанию необходимо выполнить следующие действия:

  1. Устанавливаем курсор за переделами таблицы (например, в ячейку J40)

  2. Выбираем меню Сервис/Макрос/Начать запись. Вводим имя макроса «сорт_особая_возр».

Нажимаем кнопку ОК. После этого появится панель «Остановить запись».

  1. Выделяем ячейку A10, выполняем команду Данные/Сортировка и задаем сортировку по полю «наименование» по возрастанию.

  1. В MS Office 2003 нажимаем кнопку «Параметры», в списке выбираем созданный ранее список и нажимаем ОК, в MS Office 2007 выполняем команду Данные/Сортировка/ Порядок/Настраиваемый список и в появившемся окне Списки выбираем созданный в ячейках J5:J9 список

  1. Выбираем команду Сервис/Макрос/Остановить запись (Разработчик/Остановить запись).

Текст полученного макроса с добавлением 2х строк в MS Office 2003:

Sub сорт_особая_возр()

Application.DeleteCustomList ListNum:=5

Application.AddCustomList ListArray:=Range("J5:J7")

Range("A10").Select

Range("A10:G40").Sort Key1:=Range("E11"), Order1:=xlAscending, Header:= _

xlGuess, OrderCustom:=6, MatchCase:=False, Orientation:=xlTopToBottom, _

DataOption1:=xlSortNormal

End Sub

Текст полученного макроса в MS Office 2007:

Sub сорт_особая_возр ()

Range("A10:G40").Select

ActiveWindow.SmallScroll Down:=-9

ActiveWorkbook.Worksheets("Продажи").Sort.SortFields.Clear

ActiveWorkbook.Worksheets("Продажи ").Sort.SortFields.Add Key:= _

Range("D11:D40"), SortOn:=xlSortOnValues, Order:=xlAscending, CustomOrder _

:="апельсины,груши,лимоны,мандарины,яблоки", DataOption:=xlSortNormal

With ActiveWorkbook.Worksheets("Регистрация заказов").Sort

.SetRange Range("A10:G40")

.Header = xlYes

.MatchCase = False

.Orientation = xlTopToBottom

.SortMethod = xlPinYin

.Apply

End With

End Sub

Для кнопки «Сортировка в особом порядке по возрастанию» назначаем созданный макрос «сорт_особая_возр».

Для проведения особой сортировки по столбцу «Наименование» по убыванию необходимо выполнить аналогичные действия:

  1. Устанавливаем курсор за переделами таблицы (в J40, например)

  2. Выбираем меню Сервис/Макрос/Начать запись (Разработчик/Запись макроса). Вводим имя макроса «сорт_особая_убыв».

Нажимаем кнопку ОК. После этого появится панель «Остановить запись».

  1. Выделяем ячейку A10, выполняем команду Данные/Сортировка и задаем сортировку по полю «наименование» по убыванию.

  1. Нажимаем кнопку «Параметры», выбираем созданный ранее список. В MS Office 2007 выполняем команду Данные/Сортировка/Порядок/Настраиваемый список и в появившемся окне Списки выбираем созданный в ячейках J5:J9 список в порядке от Я до А

Нажимаем кнопку ОК.

  1. Выбираем команду Сервис/Макрос/Остановить запись (Разработчик/Остановить запись).

Текст полученного макроса с добавлением 2х строк:

Sub сорт_особая_убыв()

Application.DeleteCustomList ListNum:=5

Application.AddCustomList ListArray:=Range("J5:J7")

Range("A10").Select

Range("A10:G40").Sort Key1:=Range("E11"), Order1:=xlDescending, Header:= _

xlGuess, OrderCustom:=6, MatchCase:=False, Orientation:=xlTopToBottom, _

DataOption1:=xlSortNormal

End Sub

Для кнопки «Сортировка в особом порядке по убыванию» назначаем созданный макрос «сорт_особая_убыв».