30054

Создать базу данных с полями

Книга

Информатика, кибернетика и программирование

Заполняем базу данных: номер лицевого счёта номер документа текущий остаток d346123 R67 186 d346123 R67 86 d346123 R678 186 d346123 R678 186 d346123 R678 186 d346123 R678 186 ttyujh78 D47 87 При работе с интерфейсом создаём кнопку Работа с лицевыми счетами Разработчик Вставка Элементы управления формы Кнопка которая будет вызывать макрос для работы с базой данных C помощью Visial Basic for Excel организовываем запрос очередной записи подсчет документов одного лицевого счёта в базе данных исключение записей и их редактирование Коды...

Русский

2013-08-22

94 KB

0 чел.

Постановка задачи

  1.  Создать базу данных с полями:
  •  N документа,
  •  N лицевого счёта,
  •  текущий остаток.
  1.  Создать интерфейс для работы с базой данных.

Ход  решения задачи

  1.  Создаём в Excel базу данных с полями:
  •  N документа,
  •  N лицевого счёта,
  •  текущий остаток.
  1.  Заполняем базу данных:

номер лицевого счёта

номер документа

текущий остаток

d346123

R67

186

d346123

R67

86

d346123

R678

186

d346123

R678

186

d346123

R678

186

d346123

R678

186

ttyujh78

D47

87

  1.  При работе с интерфейсом создаём  кнопку «Работа с лицевыми счетами»

(Разработчик Вставка Элементы управления формы Кнопка), которая будет вызывать макрос для работы с базой данных

C помощью Visial Basic for Excel организовываем запрос очередной записи, подсчет документов одного лицевого счёта в базе данных, исключение записей и их редактирование

Коды программы:

Dim i

Private Sub ComboBox1_Change()

k1 = ComboBox1.ListIndex + 2

TextBox1.Value = Cells(k1, 1).Value

TextBox2.Value = Cells(k1, 2).Value

TextBox3.Value = Cells(k1, 3).Value

CommandButton2.Enabled = True

CommandButton3.Enabled = True

CommandButton4.Enabled = True

CommandButton5.Enabled = True

Редактировать.Enabled = True

End Sub

Private Sub ComboBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)

End Sub

Private Sub CommandButton1_Click()

k1 = ComboBox1.ListIndex + 2

TextBox1.Value = Cells(k1, 1).Value

TextBox2.Value = Cells(k1, 2).Value

TextBox3.Value = Cells(k1, 3).Value

End Sub

Private Sub CommandButton2_Click()

'редактировать

k1 = ComboBox1.ListIndex + 2

Cells(k1, 1).Value = TextBox1.Value

Cells(k1, 2).Value = TextBox2.Value

Cells(k1, 3).Value = TextBox3.Value

End Sub

Private Sub CommandButton3_Click()

'исключение

'Rows("4:4").Select

   'Selection.Delete Shift:=x1Up

k1 = ComboBox1.ListIndex + 2

 

 'MsgBox Str(k1)

 Rows(Str(k1)).Select

 Selection.Delete Shift:=x1Up

End Sub

Private Sub CommandButton4_Click()

'подсчёт

n$ = TextBox2.Value

k = 0

For t = 2 To i

If n$ = Cells(t, 2).Value Then k = k + 1

Next

MsgBox "в вашей базе данных " & Str(k) & " записи", vbOKOnly, "номер документа " & TextBox2.Value

End Sub

Private Sub CommandButton5_Click()

'сортировка зиписей по полю "номер документа"

a$ = Str(i) 'перевод в строчку номера последней строки

a$ = Right(a$, Len(a$) - 1) 'выделение подстроки без первого символа

'MsgBox "A1:C" & a$

'Exit Sub

Range("B1").Select 'выделение диапазона

 ActiveWorkbook.Worksheets("Лист1").Sort.SortFields.Clear

   ActiveWorkbook.Worksheets("Лист1").Sort.SortFields.Add Key:=Range("A2:A8"), _

       SortOn:=x1SortOnValues, Order:=x1Ascending, DataOption:=x1SortNormal

   With ActiveWorkbook.Worksheets("Лист1").Sort

       .SetRange Range("A1:C" & a$) 'выделение диапазона для результата

       .Header = x1Yes

       .MatchCase = False

       .Orientation = x1TopToBottom

       .SortMethod = x1PinYin

       .Apply

   End With

End Sub

Private Sub CommandButton6_Click()

For i = 2 To Len(TextBox2.Text)

a$ = Mid(TextBox2.Text, i, 1)

Select Case a$     ' Evaluate Number.

Case 0 To 9   ' Number between 1 and 5, inclusive.

Label4.Caption = " "

Case Else    ' Other values.

   MsgBox "!!!!"

End Select

Next

End Sub

Private Sub Label3_Click()

End Sub

Private Sub Label5_Click()

End Sub

Private Sub TextBox2_Change()

1$ = Left(TextBox2, 1)

If 1$ = "R" Or 1$ = "H" Or 1$ = "S" Then

Else

MsgBox "не верно задан номер!"

Exit Sub

End If

For i = 2 To Len(TextBox2.Text)

a$ = Mid(TextBox2.Text, i, 1)

Select Case a$     ' Evaluate Number.

Case 0 To 9   ' Number between 1 and 5, inclusive.

Label4.Caption = " "

Case Else    ' Other values.

   MsgBox "!!!!"

End Select

Next

End Sub

Private Sub UserForm_Activate()

i = 2

Do While Cells(i, 1).Value <> 0

i = i + 1

Loop

'MsgBox Str(i)

i = i - 1

For k = 2 To i

ComboBox1.AddItem Cells(k, 1).Value

Next

End Sub

Private Sub UserForm_Click()

End Sub

Private Sub Редактировать_Click()

'вычисляем номер текущей строки в базе данных

i = i + 1

'исправляем текущую строчку

Cells(i, 1).Value = TextBox1.Value

Cells(i, 2).Value = TextBox2.Value

Cells(i, 3).Value = TextBox3.Value

End Sub

 Схема работы кнопки Private Sub CommandButton2_Click( )

'редактировать


 

А также другие работы, которые могут Вас заинтересовать

68595. ПРОФЕССИОНАЛЬНОЕ ВЫГОРАНИЕ: МИФ ИЛИ РЕАЛЬНОСТЬ 118 KB
  В работе впервые изучены особенности профессионального выгорания в повседневной деятельности связанной с экстремальными условиями ее реализации на примере работников офицерского состава министерства по чрезвычайным ситуациям МЧС. Результаты проведенного исследования позволят администрации...
68596. ИМПУЛЬСИВНОСТЬ/РЕФЛЕКТИВНОСТЬ: К ПРОБЛЕМЕ ЭФФЕКТА МОБИЛЬНОСТИ КОГНИТИВНЫХ СТИЛЕЙ СТУДЕНТОВ 73.5 KB
  Установлено что одним из факторов вызывающим эффект мобильности импульсивности рефлективности молодых людей выступает когнитивный стиль преподавателя с которым они в данный момент находятся в ситуации учебного взаимодействия. Впервые термин когнитивный стиль появился...
68598. Программирование рекурсивных алгоритмов 38.5 KB
  Если функция вызывает себя в стеке создается копия значений ее параметров как и при вызове обычной функции после чего управление передается первому исполняемому оператору функции. При завершении функции соответствующая часть стека освобождается и управление передается вызывающей функции выполнение...
68599. Исследование способов работы с функциями 60.5 KB
  В данной функции значения переменных x и y являющихся формальными параметрами меняются местами но поскольку эти переменные существуют только внутри функции chnge значения фактических...
68600. Использование функций для решения прикладных задач 61.5 KB
  Цель занятия: Совершенствование навыков разработки программ в среде программирования MS Visual C++ Совершенствование навыков использования циклов и ветвлений в программах Получение начальных навыков в объявлении и использовании функций.
68601. Обработка одномерных массивов. Организация ввода-вывода и обработки массива 43 KB
  Освоение способов описания массива, приобретение навыков организации ввода-вывода и обработки массива. Выполнение работы: в соответствии с вариантом составить и реализовать программы. Задание I Даны два массива разных размеров. Определить, какие элементы первого массива и сколько раз встречаются во втором массиве.
68602. Рулевое управление грузовых автомобилей с встроенным гидроусилителем 57.59 KB
  1 Усилитель тормозного привода 2 Крышка со встроенным контактом предупредительного сигнала при аварийном падении уровня тормозной жидкости F34 3 Бачок для тормозной жидкости гидравлического тормозного привода 4 Уплотнительное кольцо 5 Гайка самоконтрящаяся 20 Нм6 Штифт 7 Главный тормозной цилиндр...
68603. Рулевое управление грузовых авто с отдельно-расположенным ГУР 81.25 KB
  Конструктивные особенности Распределитель состоит из корпуса 13 и золотника 30. На внутренней поверхности корпуса золотника имеются три кольцевые канавки. Корпус золотника прикреплен к фланцу корпуса 6 шарниров. Буртик в крайних положениях упирается в торец корпуса 13 распределителя и в торец корпуса...