- •Билет1.
- •Билет2.
- •Билет 3
- •1.Цикл блок-схема
- •Билет 4
- •Билет 6
- •Билет 9
- •Билет 10
- •1)Динамічні масиви
- •2)List boxи его основные свойства.
- •3) Point и метод Метод pset
- •Билет 11
- •1. Числові і строкові змінні
- •12 Билет
- •1)Типы данных
- •2)Элементы управления vba
- •4) Работа с бинарными файлами
- •Билет 20
- •4)Робота з текстовим файлом (уведення-виведення даних), приклад.
- •Билет 21
- •6.А нету Билет 22
- •Билет 23
- •1.Зона видимості змінних
- •2. Розробка меню.
- •4. Методы AddNew и Update
- •Билет 24
- •Билет 25
Билет 10
1)Динамічні масиви
Масив - це набір елементів певного типу, кожен з яких має свій порядковий номер, званий індексом. Розрізняють статичні і динамічні масиви.
Іноді при оголошенні масиву його розмір не відомий. В цьому випадку слід оголошувати динамічний масив, що дозволяє змінювати його розмір або розмірність під час виконання застосування.
Динамічний масив створюється в два етапи. Спочатку масив визначають в секції General Declarations контейнера без вказівки розміру:
Dim aarray() As Variant
Потім за допомогою оператора Redim встановлюють фактичний розмір масиву:
Dim aarray() As Variant Private Sub Command1_click() Redim aarray(50, 10) 'Код End Sub
Синтаксис оператора Redim:
Redim [Preserve] Ім`я_перемінної (Межі) [As Тип_даних]
Проте Visual Basic надає можливість змінювати розмірність масиву без втрати вмісту. Для цього слід використовувати Redim разом з ключовим словом Preserve:
Dim aarray() As Variant Private Sub Comroand1_click() Redim Preserve aarray(50, 15) 'Код End Sub
Використання з оператором Redim зарезервованого слова preserve дозволяє зберегти вміст масиву при зміні його розміру або розмірності. Але слід враховувати, що для багатовимірних масивів можна змінювати тільки останнє вимірювання:
Dim aarray() As Variant Private Sub Command1_click() Redim aarray(10, 10) Redim Preserve aarray(10, 15) 'діє Redim Preserve aarray(15, 15) 'помилка End Sub
При зміні розмірності можна також змінювати верхню і нижню межі індексу. Але якщо при цьому використовується ключове слово Preserve, то дозволено змінювати тільки верхню межу:
Dim aarray() As Variant Private Sub Command1_click() Redim aarray(10, 20) Redim Preserve aarray(10, 25) 'діє Redim Preserve aarray(15, 25) 'помилка End Sub
Область видимості динамічних масивів (контейнерних, глобальних) визначається способом їх оголошення - якщо за допомогою оператора Public, то масив буде глобальним, якщо за допомогою Dim, то контейнерним.
2)List boxи его основные свойства.
ListBox используются для наглядного представления информации и возможности выбора как одного, так и нескольких его элементов.
BackColor
Style
Sorted
3) Point и метод Метод pset
Точка метод он делает возвращение как целое число (Long), цвет RGB точки вы указываете, могут быть использованы как в таком виде, как PictureBox.
PSET метод дает определенный цвет для точечного объекта.
В следующем примере используются оба метода.
Загрузить графический в picture1 а также место Picture2. Нажав на picture1, в случае MouseDown, вы получите цвет пикселя, что и это значение будет применяться к BackColor из Picture2, как показано на графике, зеленая точка установленном PSET метода.
Примечание: формы и варианты, в которых точка рисуется или других фигур с использованием графических методов, в зависимости от свойств объекта DrawStyle и DrawMode.
Это еще один пример, использующий PSET обратить точки, нажав на форме, на значений х и у, то событие MouseDown бланка, а затем рисует линию от одной точки до другой точки методом линии
4) On Error
Включает подпрограмму обработки ошибок и определяет местоположение этой подпрограммы в процедуре. Может также использоваться для отключения подпрограммы обработки ошибок. Если оператор On Error отсутствует, любая ошибка во время выполнения является фатальной: программа выводит сообщение об ошибке, и выполнение заканчивается.
Public Sub OnErrorDemo()
On Error GoTo ErrorHandler ' Enable error-handling routine.
Dim x As Integer = 32
Dim y As Integer = 0
Dim z As Integer
z = x / y ' Creates a divide by zero error
On Error GoTo 0 ' Turn off error trapping.
On Error Resume Next ' Defer error trapping.
z = x / y ' Creates a divide by zero error again
If Err.Number = 6 Then
' Tell user what happened. Then clear the Err object.
Dim Msg As String
Msg = "There was an error attempting to divide by zero!"
MsgBox(Msg, , "Divide by zero error")
Err.Clear() ' Clear Err object fields.
End If
Exit Sub ' Exit to avoid handler.
ErrorHandler: ' Error-handling routine.
Select Case Err.Number ' Evaluate error number.
Case 6 ' Divide by zero error
MsgBox("You attempted to divide by zero!")
' Insert code to handle this error
Case Else
' Insert code to handle other situations here...
End Select
Resume Next ' Resume execution at same line
' that caused the error.
End Sub
Resume
Обязательный. Если ошибка произошла в той же процедуре, в которой находится обработчик ошибок, то выполнение возобновляется с оператора, который вызвал ошибку. Если ошибка возникла в вызываемой процедуре, то выполнение возобновляется с оператора, который последним вызвал процедуру, содержащую обработчик ошибок.
Next
Необязательно. Если ошибка возникла в той же процедуре, в которой находится обработчик ошибок, то выполнение возобновляется с оператора, непосредственно следующего за оператором, вызвавшим ошибку. Если ошибка возникла в вызываемой процедуре, то выполнение возобновляется с оператора, непосредственно следующего за оператором, который последним вызвал процедуру, содержащую обработчик ошибок (или оператор On Error Resume Next).
Sub ResumeStatementDemo()
On Error GoTo ErrorHandler ' Enable error-handling routine.
Dim x As Integer = 32
Dim y As Integer = 0
Dim z As Integer
z = x / y ' Creates a divide by zero error
Exit Sub ' Exit Sub to avoid error handler.
ErrorHandler: ' Error-handling routine.
Select Case Err.Number ' Evaluate error number.
Case 6 ' "Divide by zero" error.
y = 1 ' Sets the value of y to 1 and tries the calculation again.
Case Else
' Handle other situations here....
End Select
Resume ' Resume execution at same line
' that caused the error.
End Sub
5. Cls Dim n As Integer, i As Integer, j As Integer, p As Integer Dim max As Integer INPUT n Dim a(n) As Integer Print "Vvedite massiv iz"; n; "elementov:" For i = 0 To n - 1 INPUT a(i) Next i Print p = 1 For i = 0 To n - 2 If a(i) = a(i + 1) Then p = p + 1 If p > max Then max = p If a(i) <> a(i + 1) Then p = 1 Next i Print max
6. Написати фрагмент програми додавання записів в таблицю (без використання елементу Data). Set Data1.Recordset = Nothing rs.AddNew rs.Fields(0).Value = 111 rs.Fields(1).Value = 222 rs.Update Set Data1.Recordset = rs