Студопедия — Код кнопки добавить и последующий форме
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Код кнопки добавить и последующий форме






Этот код выводит одноименную форму содержащую TextBox для добавления в таблицу записи. Подобная система вывода форма выбрана мной для того чтобы основные окна формы не были переполнены различными элементами.

‘выводится форма добавления

Private Sub CommandButton1_Click()

Unload UserForm3

UserForm4.Show

End Sub

 

 

Данная форма имеет 2 TextBox и 2 CommandButton.

 

Код кнопки «Добавить»:

Private Sub CommandButton1_Click()

Sheets("Сотрудники").Activate

Dim i As Integer

i = Sheets("Сотрудники").UsedRange.Rows.Count + 1

Sheets("Сотрудники").Cells(i, 1) = TextBox5.Value

MsgBox ("Сотрудник добавлен")

TextBox5.Value = ""

TextBox4.Value = ""

Exit Sub

End Sub

 

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

 

Код кнопки «Назад».

Private Sub CommandButton2_Click()

Unload UserForm4

UserForm3.Show

End Sub

Закрывает форму добавления и возвращает нас на форму «Список сотрудников».

Далее на форме «Список сотрудники» есть кнопка «Удалить».

Её код:

Private Sub CommandButton3_Click()

Worksheets(1).Activate

Dim n As Integer

n = 0

n = MsgBox("Данные будут удалены" & Chr(10) & "Хотите продолжить?", vbOKCancel, "Удаление")

If n = 1 Then

i = ListBox1.ListIndex

ActiveSheet.Rows(i + 2).Delete

MsgBox ("Данные удалены")

Else

MsgBox ("Удаление отменено")

End If

i = Sheets("Сотрудники").UsedRange.Rows.Count

ListBox1.RowSource = "A2:B" + Trim(Str(i))

Unload UserForm3

UserForm3.Show

End Sub

 

При нажатии на эту кнопку для безопасности данных выводится окно с вопросом о точности ваших намерений. При согласии данные выбранной строки удаляться и список ниже выделенной строки поднимется на строку выше. После чего произойдет обновление списка.

Кнопка «Изменить»

Изменяет выделенную строку в Listbox

 

Её код:

Private Sub CommandButton2_Click()

Dim i As Integer, j As Integer, s As String, a()

a = ListBox1.List: i = ListBox1.ListIndex

For j = 0 To 1

s = InputBox("Столбец " & j + 1, "Введите новые данные", a(i, j))

If s <> "" Then Sheets("Сотрудники").Cells(i + 1, j + 1) = s

Next

i = Sheets("Сотрудники").UsedRange.Rows.Count

ListBox1.RowSource = "A2:B" + Trim(Str(i))

End Sub

Поочередно на экран выводятся запросы с изменением записи в таблице в порядке заполнения. Обновление происходит после закрытия последнего окна.

Кнопка «Оформить продажу»

Кнопка выводит на экран форму для заполнения:

Private Sub CommandButton5_Click()

Unload UserForm3

UserForm5.Show

Sheets("Сотрудники").Activate

ListBox1.ColumnWidths = "200;90"

ListBox1.Clear

i = 0

Do

i = i + 1

ListBox1.AddItem Cells(i, 1)

For j = 1 To 2

ListBox1.List(i - 1, j - 1) = Cells(i, j)

Next j

Loop While Cells(i + 1, 1) <> ""

 

End Sub

 

В данной форме мы заполняем данные для оформления продажи.

 

Код формы:

Private Sub CommandButton1_Click()

i = 2

Do Until Worksheets("Продажи").Cells(i, 1) = Empty

i = i + 1

Loop

Sheets("Продажи").Select

'Dim i As Integer

'i = Sheets("Продажи").UsedRange.Rows.Count + 1

 

Sheets("Продажи").Cells(i, 1) = ComboBox1.Value

Sheets("Продажи").Cells(i, 2) = TextBox2.Value

Sheets("Продажи").Cells(i, 3) = ComboBox3.Value

Sheets("Продажи").Cells(i, 4) = TextBox3.Value

Sheets("Продажи").Cells(i, 5) = TextBox4.Value

Sheets("Продажи").Cells(i, 6) = TextBox1.Value

MsgBox ("Продажа добавлена")

 

ComboBox1.Value = ""

TextBox2.Value = ""

ComboBox3.Value = ""

TextBox3.Value = ""

TextBox4.Value = ""

TextBox1.Value = ""

End Sub

 

Для ускорения процесса заполнения при выборе сотрудника его данные автоматически заполняют соответствующие текстовые поля.

Private Sub UserForm_Initialize()

i = 2

Do Until Worksheets("Сотрудники").Cells(i, 1) = Empty

i = i + 1

Loop

For j = 2 To i

ComboBox1.AddItem (Worksheets("Сотрудники").Cells(j, 1))

Next j

 

i = 2

Do Until Worksheets("Телефоны").Cells(i, 1) = Empty

i = i + 1

Loop

For j = 2 To i

ComboBox3.AddItem (Worksheets("Телефоны").Cells(j, 2))

Next j

End Sub

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

 

 

 

Private Sub Calendar1_DblClick()

UserForm5.TextBox1.Value = Format(Calendar1.Value, "dd.mm.yyyy")

Unload UserForm8

End Sub

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

Кнопка «Оформить продажу»:

Private Sub CommandButton1_Click()

i = 2

Do Until Worksheets("Продажи").Cells(i, 1) = Empty

i = i + 1

Loop

Sheets("Продажи").Select

'Dim i As Integer

'i = Sheets("Продажи").UsedRange.Rows.Count + 1

 

Sheets("Продажи").Cells(i, 1) = ComboBox1.Value

Sheets("Продажи").Cells(i, 2) = TextBox2.Value

Sheets("Продажи").Cells(i, 3) = ComboBox3.Value

Sheets("Продажи").Cells(i, 4) = TextBox3.Value

Sheets("Продажи").Cells(i, 5) = TextBox4.Value

Sheets("Продажи").Cells(i, 6) = TextBox1.Value

MsgBox ("Продажа добавлена")

 

 

ComboBox1.Value = ""

TextBox2.Value = ""

ComboBox3.Value = ""

TextBox3.Value = ""

TextBox4.Value = ""

TextBox1.Value = ""

End Sub

 

На рабочем листе ищется первая пустая строка в которую заносятся данные.

2.3 Форма «Телефоны»

Эта форма содержит в себе ListBox в который выводится список телефонов с одноименного листа рабочей книги. Позволяет добавлять, изменять, удалять, оформлять продажу. Для этого используются соответствующие кнопки «Добавить», «Изменить», «Удалить», «Назад», «Оформить продажу»

Кнопки «Добавить», «Оформить продажу» и «Удалить» описаны ранее. Поэтому поговорим о кнопках «Изменить»

Код кнопки «Изменить»:

Private Sub CommandButton2_Click()

Dim i As Integer, j As Integer, s As String, a()

a = ListBox1.List: i = ListBox1.ListIndex

For j = 0 To 1

s = InputBox("Столбец " & j + 1, "Введите новые данные", a(i, j))

If s <> "" Then Sheets("Телефоны").Cells(i + 1, j + 1) = s

 

Next

i = Sheets("Телефоны").UsedRange.Rows.Count

ListBox1.RowSource = "A2:B" + Trim(Str(i))

End Sub

 







Дата добавления: 2015-06-15; просмотров: 423. Нарушение авторских прав; Мы поможем в написании вашей работы!



Шрифт зодчего Шрифт зодчего состоит из прописных (заглавных), строчных букв и цифр...

Картограммы и картодиаграммы Картограммы и картодиаграммы применяются для изображения географической характеристики изучаемых явлений...

Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...

Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Примеры задач для самостоятельного решения. 1.Спрос и предложение на обеды в студенческой столовой описываются уравнениями: QD = 2400 – 100P; QS = 1000 + 250P   1.Спрос и предложение на обеды в студенческой столовой описываются уравнениями: QD = 2400 – 100P; QS = 1000 + 250P...

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

Педагогическая структура процесса социализации Характеризуя социализацию как педагогический процессе, следует рассмотреть ее основные компоненты: цель, содержание, средства, функции субъекта и объекта...

Значення творчості Г.Сковороди для розвитку української культури Важливий внесок в історію всієї духовної культури українського народу та її барокової літературно-філософської традиції зробив, зокрема, Григорій Савич Сковорода (1722—1794 pp...

Постинъекционные осложнения, оказать необходимую помощь пациенту I.ОСЛОЖНЕНИЕ: Инфильтрат (уплотнение). II.ПРИЗНАКИ ОСЛОЖНЕНИЯ: Уплотнение...

Приготовление дезинфицирующего рабочего раствора хлорамина Задача: рассчитать необходимое количество порошка хлорамина для приготовления 5-ти литров 3% раствора...

Studopedia.info - Студопедия - 2014-2024 год . (0.011 сек.) русская версия | украинская версия