Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MS Excel.rtf
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
15 Мб
Скачать
☆

Самостоятельная работа

Задание. Составить таблицу истинности функции–

1 вариант. Логического сложения.

2 вариант. Логического следования

3 вариант. Логического умножения.

Задание № 6. Для вашей рабочей книги описать события Open и Close таким образом, чтобы при открытии файла запрашивалось имя пользователя и записывалось в другой файл Excel, а также время начала работы. При закрытии в тот же файл записывать время окончания работы.

Пояснения к выполнению.

Now – функция Visual Basic, возвращающая системную дату и время компьютера.

Выполнение:

  1. Создать в своей директории новый файл Excel. Набрать в нём заголовок «Журнал пользователей». Создать шапку таблицы как на рисунке. В ячейке F1 организовать подсчёт количества записей в столбце А помощью функции МАКС: =МАКС(A:A). Выделить столбец В, выбрать пункт меню ФОРМАТ – ЯЧЕЙКИ , в разделе ЧИСЛО задать тип данных в этом столбце – текстовый. Аналогично настроить типы данных для столбца С – дата, для столбцов D и Е – время. Сохранить файл под именем “s.xls”. Закрыть файл.

  1. Открыть свою рабочую книгу. Войти в редактор Visual Basic. В проводнике проекта указать на «Эта книга», затем представить документ в виде кода (View – Code), выбрать в списке объектов Workbook, событие Open.

  1. Внести в процедуру следующий код:

Private Sub Workbook_Open()

Dim i As String ' Объявляем строковую переменную

Dim row As Integer ' объявляем вспомогательную переменную row

i = InputBox("Ваше имя?", "", "ХХ") ' Запрашиваем имя пользователя

Application.ScreenUpdating = False ' Даём команду не обновлять экран

Workbooks.Open ("D:\....\s.xls") ' Необходимо указать полный путь до файла s.xls

With Workbooks("s.xls").Worksheets("Лист1")

row = Range("F1").Value + 3 ' Вычисляем номер заполняемой строки

Cells(row, 1).Value = row - 2 ' Создаём порядковый номер строки

Cells(row, 2).Value = i ' Вносим пользователя

Cells(row, 3).Value = Date ' Вносим дату начала работы

Cells(row, 4).Value = Time Вносим время начала работы

End With

Workbooks("s.xls").Save ‘Сохраняем файл “s.xls”.

Workbooks("s.xls").Close ‘ Закрываем файл “s.xls”

Application.ScreenUpdating = True ' Разрешаем обновление экрана

End Sub

  1. Выбрать в списке событий событие BeforeClose.

Внести следующий код:

Private Sub Workbook_Close()

Dim i As String ' Объявляем строковую переменную

Dim row As Integer ' объявляем вспомогательную переменную row

Application.ScreenUpdating = False ' Даём команду не обновлять экран

Workbooks.Open ("D:\издат\s.xls") ' Необходимо указать полный путь до файла s.xls

With Workbooks("s.xls").Worksheets("Лист1")

row = Range("F1").Value + 2 ' Вычисляем номер заполняемой строки

Cells(row, 5).Value = Time ‘Вносим время окончания работы

End With

Workbooks("s.xls").Save

Workbooks("s.xls").Close

Application.ScreenUpdating = True ‘Разрешаем обновлять экран

End Sub

  1. Запустить поочерёдно процедуру Open. Перейти в Excel, открыть файл “s.xls” и убедиться, что внесено имя пользователя и время начала работы. Закрыть файл “s.xls”, затем свою рабочую книгу. Открыть файл “s.xls” и убедиться, что время окончания внесено по аналогии с таблицей.

Журнал пользователей

Всего записей

2

№пп

Пользователь

Дата начала работы

Время начала работы

Время окончания работы

1

Паша Филонов

29 сентября 2006 г.

19:10

19:11

2

Миша Белокриницкий

29 сентября 2006 г.

19:15

19:16

  1. Закрыть файл “s.xls”.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]