>
If cmbSearch.Text= Сайт Then sField= Season =FalseDataSource.Recordset
. MoveFirstUntil .EOFtxtSearch=.Fields (sField) Then
=TrueIf
. MoveNextWithbSearch=False Then lblRes.Caption= Пошук дав результатів
End Sub
Метод .AddNew запроваджує програму в режим додавання інформації, очищаючи потрібні текстові поля. Користувачеві виводиться повідомлення з підказкою «Введіть дані». Сама кнопка ховається від користувача, щоб запобігти помилку. Для завершення додавання стає видимою кнопка «Зберегти додаються дані», яка записує введені дані в таблицю, а так само повертає колишні кнопки. Код цієї кнопки представлений нижче: Sub Комманда4_Click (). Recordset.Update ( Додавання завершено )
Комманда1.Visible=True
Комманда3.Visible=True
Комманда2.Visible=True
Комманда4.Visible=False
End Sub
При навігації між формами потрібен захист від помилок, викликаних випадковими невірними діями користувача. Батьківська форма стане неактивною і користувач не зможе внести в неї зміни, не закінчивши роботу з дочірньою. Приклад такої процедури нижче:
Sub Адміністрація ()
Form1.text1.SelText=Clipboard.GetText
End Sub
Дуже важливими є функції СУБД. Запити, що вносять зміни в базу даних, підключенням. Застосовуваний метод дозволяє виконати VBA запит і відстежити результат його виконання (успішний або з помилкою). Нижче наведені приклади використання таких конструкцій на кнопках редагування у формі редактора.
//Додавання: Sub UserForm_Click ()
. VBA ( INSERT INTO po (name, desc, price, dev, datebuy, dateend) VALUES (" + AnsiToUtf8 (edtName.text) +
, + AnsiToUtf8 (edtDesc.text) +
, + AnsiToUtf8 (edtPrice.text) +
, + AnsiToUtf8 (edtDev.text) +
, + AnsiToUtf8 (edtBuy.text) +
, + AnsiToUtf8 (edtEnd.text) +
laquo;")raquo;);.Text:=laquo;raquo;;.Text:=laquo;raquo;;.Text:=laquo;raquo;;.Text:=laquo;raquo;;.Text:=laquo;raquo;;.Text:=laquo;raquo;;(laquo;Готово!raquo;);;
End Sub
//Внесення змін:
Private Sub UserForm 2_Click ()
Sub
Dim a, b, c, d As IntegerSub CommandButton1_Click ()=Val (TextBox1.Text)=Val (TextBox2.Text)=Val (TextBox3.Text) Case a5=b + c.Caption=«Результат: d =» amp; d0=- b - c.Caption=«Результат: d =» amp; d10=b * c.Caption=«Результат: d =» amp; d
Case Else.Caption=«Введено не те значення» SelectSub
Крім основних форм для виводу використовуються звіти.
Звіти являють собою найкращий засіб представлення інформації з бази даних у вигляді друкованого документа. У порівнянні з іншими методами виведення даних на друк звіти володіють двома принциповими перевагами:
звіти надають широкі можливості для групування і обчислення проміжних і загальних підсумків для великих наборів даних;
звіти можуть бути використані для отримання красиво оформлених матеріалів, на?? лійок та інших документів.
Для формування звітів в нашій програмі є окрема форма. Вона дозволяє сформувати необхідний звіт і потім роздрукувати його (або вивести в файл). Для формування звіту і виведення буде використовуватися вбудований компонент середовища. За допомогою цього компонента ми можемо використовувати принтер, встановлений в системі Visual Basic, що б вивести звіт. Якщо фізичного принтера в системі не встановлено, або за замовчуванням вибрано віртуальний принтер, звіт виведеться у файл.
Нижче наведена процедура друку звіту:
Private Sub UserForm_Click (), X2: Integer ;, Y2: Integer ;: Integer ;: Integer ;: TRect;
End Sub
Printer.Title:=sTitle; .BeginDoc; .Canvas.Pen.Color:=0; .Canvas.Font.Name:= Times New Roman raquo ;;. Canvas.Font.Size: =12; .Canvas.Font.Style:=[fsBold, fsUnderline] ;. Canvas.TextOut (0, 100, Printer.Title); F:=1 to sGrid.ColCount - 1 do
End Select
:=0; TmpI:=1 to (F - 1) do:=X1 + 5 * (sGrid.ColWidths [TmpI]);:=300;:=0; TmpI:=1 to F do:=X2 + 5 * (sGrid.ColWidths [TmpI]);:=450;:=Rect (X1, Y1, X2 - 30, Y2) ;. Canvas.Font.Style:=[fsBold] ;. Canvas.Font.Size:=7; .Canvas.TextRect (TR, X1 + 50, 350, sGrid.Cells [F, 0]) ;. Canvas.Font.Style:=[...