- •Введение
- •Постановка задачи
- •Описание листов Титульный лист
- •Кнопки, используемые на листе «Титульный»
- •Прейскурант цен
- •Кнопки, используемые на листе «Прейскурант цен»
- •Учет реализации товаров
- •Кнопки, используемые на листе «Учет реализации товаров»
- •Продавцы
- •Кнопки, используемые на листе «Продавцы»
- •Заключение
- •Список использованной литературы
Описание листов Титульный лист
При открытии курсовой работы выводится сообщение «Добро пожаловать в информационно-аналитическую систему товароведа!». Для его реализации, а также определенных настроек рабочей области (отключение вывода строки формул, скрытие панелей инструментов и т.д.) в редакторе Visual Basic в элемент вводится следующая программа:
Private Sub Workbook_Open()
Sheets("Титульный лист").Activate
MsgBox "Вас приветствует информационно - аналитическая система товароведа!"
End Sub
Кнопки, используемые на листе «Титульный»
На листе реализованы шесть кнопок: «Автор», «Имя пользователя», «Выход», «Прейскурант цен», «Учет реализации товаров» и «Продавцы». Кнопки создаются через панель инструментов «Элементы управления».
При нажатии на кнопку «Выход» выводится запрос на подтверждение - «Вы действительно хотите выйти из Excel?».
При нажатии на кнопку «Да» вы выходите из программы, если «Нет», то выходит сообщение «Выход не состоится»
Программный код:
Sub выход()
'
' выход Макрос
'
Dim txtСообщение As String, txtЗаголовок As String
Dim Кнопки As Integer, Результат As Integer
txtСообщение = "Вы действительно хотите выйти из Excel?"
txtЗаголовок = "До свидания!"
Кнопки = vbYesNo + vbQuestion + vbfaultButton2
Результат = MsgBox(txtСообщение, Кнопки, txtЗаголовок)
If Результат = vbYes Then
Application.Quit
Else: MsgBox "Выход не состоится", vbOKOnly, "Снова привет!"
End If
'
End Sub
При нажатии на кнопку «Имя пользователя», выводится окно ввода, которое запрашивает имя пользователя, а затем обновляет лист ввода.
Программный код:
Sub имя()
'
' имя Макрос
'
Dim txtСообщение As String, txtЗаголовок As String
Dim txtРезультат As String, txtПоУмолчанию As String
txtСообщение = "Как ваше имя?"
txtЗаголовок = "Пример окна ввода"
txtПоУмолчанию = "Неизвестный пользователь"
txtРезультат = InputBox(txtСообщение, txtЗаголовок, txtПоУмолчанию)
Worksheets("Титульный лист").Select
Range("A1").Select
ActiveCell.Formula = txtРезультат
'
End Sub
При нажатии на кнопки «Прейскурант цен», «Учет реализации товаров», «Продавцы» вы переходите на соответствующие листы.
При нажатии на кнопку «Сведение об авторе», выходит форма, содержащая сведения об авторе курсовой работы.
Программный код:
Sub Автор()
'
' Автор Макрос
'
UserForm1.Show
'
End Sub
Прейскурант цен
На листе Прейскурант цен расположена таблица, содержащая следующие данные:
Код товара;
Наименование товара;
Цена за единицу товара;
Кнопки, используемые на листе «Прейскурант цен»
Кнопка «Титульный лист»
При нажатии на кнопку «Титульный лист», выводится главное меню управления программой.
Программный код:
Sub Титульный()
'
' титульный Макрос
'
'
Sheets("Титульный лист").Select
MsgBox ("Вы перешли на Титульный лист")
End Sub
Кнопка «Добавление и удаление данных»
При нажатии на кнопку «Добавление и удаление данных», появляется пользовательская форма «Добавление и удаление данных», с помощью которой можно добавлять новые товары в таблицу, а так же удалять информацию о товаре со всех таблиц, в которых данная информация имеется.
Программные коды:
Для кнопки «Добавить»
Private Sub CommandButton1_Click()
Dim Y As Byte
If TextBox1 = "" Or TextBox2 = "" Or TextBox3 = "" Then
Y = MsgBox("Добавление данного товара невозможно, т.к. не введены все критерии", vbOKCancel, "Товар")
If h = vbCancel Then GoTo e Else GoTo 12
End If
Dim name As String, simvol As String
Dim pr As Object, X As Object
Dim Название As String, Символ As String
Dim Цена As Integer
ActiveWorkbook.Sheets("Прейскурант цен").Activate
simvol = TextBox1
Set pr = ActiveSheet.Range("a1")
Do While Not IsEmpty(pr)
Set X = pr.Offset(1, 0)
If pr = simvol Then
Y = MsgBox("Добавление невозможно, т.к. введенный код уже зарегистрирован", vbOKCancel, "Код")
If Y = vbCancel Then GoTo e Else GoTo 12
End If
Set pr = X
Loop
ActiveWorkbook.Sheets("Прейскурант цен").Activate
name = TextBox2
Set pr = ActiveSheet.Range("b2")
Do While Not IsEmpty(pr)
Set X = pr.Offset(1, 0)
If pr = name Then
Y = MsgBox("Такой товар уже есть в списке, внести его еще под другим кодом?", vbYesNo + vbQuestion, "Товар")
If Y = vbYes Or Y = vbNo Then GoTo 5 Else GoTo 12
End If
Set pr = X
Loop
5 Символ = TextBox1
Название = TextBox2
Цена = TextBox3
ActiveWorkbook.Sheets("Прейскурант цен").Activate
Range("A3").Select
Selection.EntireRow.Insert
Set pr = ActiveSheet.Range("A2")
Do While Not IsEmpty(pr)
Set X = pr.Offset(1, 0)
Set pr = X
Loop
pr = Символ
pr.Offset(0, 1) = Название
pr.Offset(0, 2) = Цена
Set pr = Nothing
Set X = Nothing
Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
12 UserForm3.Hide
e: End Sub
Программный код для кнопки «Сброс»
Private Sub CommandButton2_Click()
TextBox1 = ""
TextBox2 = ""
TextBox3 = ""
End Sub
Программный код для кнопки «Удалить»
Private Sub CommandButton3_Click()
Dim pr As Object, X As Object
Dim name As String
Dim h As Byte
Dim Y As Byte
h = MsgBox("Вы действительно хотите удалить этот товар?", vbYesNo + vbQuestion, "Удаление")
If h = vbYes Then Else GoTo e
name = ComboBox1
If ComboBox1 = "" Then
Y = MsgBox("Удаление невозможно, т.к. не выделен объект", vbYesNo + vbQuestion, "Удаление")
If Y = vbYes Then GoTo 12 Else GoTo e
End If
ActiveWorkbook.Sheets("Учет реализации товаров").Activate
Set pr = ActiveSheet.Range("b2")
Do While Not IsEmpty(pr)
Set X = pr.Offset(1, 0)
If pr = name Then
pr.Select
Selection.EntireRow.Delete
End If
Set pr = X
Loop
ActiveWorkbook.Sheets("Прейскурант цен").Activate
Set pr = ActiveSheet.Range("a2")
Do While Not IsEmpty(pr)
Set X = pr.Offset(1, 0)
If pr = name Then
pr.Select
Selection.EntireRow.Delete
End If
Set pr = X
Loop
12 ComboBox1 = ""
Labe17 = ""
UserForm3.Hide
e: End Sub