Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЗАДАЧНИК_экономистам_менеджерам_пракРемизов.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
18.01 Mб
Скачать

Соединение двух списков

Чтобы рассчитать премию за выслугу лет, нам нужно знать стаж работы каждого служащего на предприятии и его должностной оклад. Эти сведения, как вы помните, хранятся в разных местах. Для решения задачи необходимо связать базу данных сотрудников и список с окладами. Существует множество методов соединения двух списков. Более приемлемым в данном случае представляется метод копирования с последующей сортировкой, который ниже будет рассмотрен подробнее.

Итак, в нашем распоряжении имеется два документа: - рабочий лист, где содержатся список сотрудников и их оклады (присвоим этому листу имя Оклады, а файл, в котором он находится, назовем Штат)', - рабочий лист с базой данных сотрудников, рассмотренный в предыдущей главе. Из него мы можем взять информацию о непрерывном стаже работы сотрудника на данном предприятии (рис. 4.19).

Для соединения двух таблиц откройте две книги, содержащие списки, В книге База на листе Сотрудники выделите столбцы A:U и скопируйте их в буфер обмена. Перейдите в книгу Штат и, выделив столбец G на листе Оклады, произведите вставку из буфера. База данных сотрудников разместится в диапазоне G1:AA11.

ПРИМЕЧАНИЕ

Обратите внимание на то, что ширина столбцов после вставки осталась такой же, как и в рабочем листе Сотрудники.

Теперь из таблицы необходимо удалить все лишние данные. Для дальнейших расчетов нам понадобится следующая информация из табличной базы данных сотрудников: табельные номера, фамилии, названия отделов, названия должностей, дата приема на работу и, возможно, дата увольнения.

Чтобы удалить ненужные столбцы, сначала следует их выделить (одновременное выделение столбцов можно произвести, удерживая нажатой клавишу [Ctrl]), a затем вызвать контекстное меню и выбрать в нем команду Удалить. Удаление можно выполнить и посредством команды Правка/Удалить.

Лист, который мы получим после вставки фрагмента табличной базы данных и удаления лишних столбцов, изображен на рис. 5.10.

Рис. 5.10. Лист Оклады, содержащий фрагмент листа Сотрудники

Теперь на одном листе электронных таблиц Excel собраны все необходимые нам данные:

- табельные номера из штатного расписания и табельные номера из базы данных сотрудников;

- фамилии из штатного расписания и фамилии из базы данных;

- даты приема на работу - для автоматического расчета стажа работы;

- даты увольнения - для контроля;

- оклады - для расчета премии за выслугу лет.

Однако данные расположены в строках двух таблиц в разной последовательности. Наша следующая задача - отсортировать списки на этом листе таким образом, чтобы они соответствовали друг другу (то есть чтобы фамилии работников из разных списков находились в одной строке)

Сортировка данных

Довольно часто данные требуется представить в соответствии с некоторым заданным критерием: в порядке возрастания, убывания либо в алфавитном порядке. Изменение порядка расположения строк называется сортировкой.

Для выполнения сортировки необходимо поместить курсор в любую ячейку поля, где будет происходить данная операция, и щелкнуть на одной из кнопок сортировки (по возрастанию или по убыванию), расположенных на стандартной панели инструментов.

Выполните сортировку по фамилиям в обоих списках, и вы увидите, что после этого данные, касающиеся одного сотрудника, будут находиться в одной строке.

Рис. 5.11. Результаты сортировки по фамилиям

Иногда возникает необходимость производить сортировку по нескольким столбцам одновременно. В нашем случае, например, может потребоваться отсортировать список сначала по сумме оклада в порядке убывания, а затем по фамилиям, по алфавитному признаку в порядке возрастания.

Используя только кнопки сортировки, вы можете не получить желаемого результата. Для того чтобы произвести одновременную сортировку более чем по одному полю, активизируйте команду Данные/Сортировка. В результате ее выполнения появится диалоговое окно Сортировка диапазона (рис. 5.12). В раскрывающемся списке Сортировать по выберите столбец и установите переключатель сортировки (по убыванию или по возрастанию). То же нужно сделать и для второго поля.

Рис. 5.12. Диалоговое окно Сортировка диапазона с выбранным порядком сортировки по окладу и по фамилии

Сортировка по второму полю (по фамилии) будет производиться только для тех строк, у которых в столбце "Оклад" имеются одинаковые значения. В нашем случае один и тот же размер оклада имеют работники Карпова и Петров. В соответствии с условием второй сортировки в списке сначала будет идти фамилия Карпова, а затем Петров. Полученный в результате такой сортировки список представлен на рис. 5.13.

Рис. 5.13. Список отсортирован Сначала по критерию "Оклад" (по убыванию), а затем по критерию "Фамилия" (в алфавитном порядке по возрастанию)

В таблице, показанной на рис. 5.11, содержится небольшой объем информации (всего о 10 человеках). Но, как правило, приходится оперировать со значительно большим списком сотрудников, поэтому подход к процессу обработки должен быть таким, чтобы полностью исключить возможность появления и распространения ошибки.