JonnySilver

Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору ' В ADO так делается ' ======================================== ' в модуле Public cn As New ADODB.Connection Public cm As New ADODB.Command Public rs As New ADODB.Recordset ' в модуле sub MakeConnect() cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & _ "\База.mdb;Mode=ReadWrite;Persist Security Info=False" Set cm.ActiveConnection = cn Set rs.ActiveConnection = cn rs.CursorLocation = adUseClient rs.CursorType = adOpenKeyset rs.LockType = adLockOptimistic end sub ' ======================================== ' в модуле формы ' ' обновление записи Private Sub btnUpdate_Click() rs!Поле_1 = Me.Text1.Text rs!Поле_2 = Me.Text2.Text rs!Поле_3 = Me.Text3.Text rs.Update End Sub ' добавление записи Private Sub btnNew_Click() On Error Resume Next cm.CommandText = "INSERT INTO Таблица_1 (Поле_1,Поле_2,Поле_3) VALUES ('" & _ CDate(Date) & "','" & CDate(Time()) & "','Новая запись');" cm.Execute rs.Requery rs.MoveLast End Sub ' удаление записи по условию Private Sub btnDel_Click() On Error Resume Next Dim m_CurRec As Long Dim Response As Integer Dim Msg As String, Title As String Msg = "Вы действительно хотите удалить текущую запись ?" Title = "Внимание" Response = MsgBox(Msg, vbYesNo + vbCritical + vbDefaultButton2, _ Title) If Response <> vbYes Then Exit Sub End If m_CurRec = rs.AbsolutePosition m_Bookmark = rs.Bookmark cm.CommandText = "delete from Таблица_1 where Поле_3='" & me.Text3.Text & "' cm.Execute ' загрузка обновленного рекордсета Call LoadDataFromDB ' возврат к нужной записи If m_CurRec >= rs.RecordCount Then rs.MoveLast Else rs.Bookmark = m_Bookmark End If End Sub ' удаление всех записей Private Sub btnDelAll_Click() On Error Resume Next Dim Response As Integer Dim Msg As String, Title As String Msg = "Вы действительно хотите удалить все записи " Title = "Внимание" Msg = Msg & " из базы ?" cm.CommandText = "delete from Таблица_1" Response = MsgBox(Msg, vbYesNo + vbCritical + vbDefaultButton2, _ Title) If Response <> vbYes Then ' User chose Yes. Exit Sub End If cm.Execute Call LoadDataFromDB End Sub ' заргрузка данных в рекордсет и датагрид Private Sub LoadDataFromDB() Dim sCmd As String On Error Resume Next sCmd = "SELECT Поле_1,Поле_2,Поле_3 from Таблица_1" If rs.State = adStateOpen Then rs.Close End If rs.Open sCmd Set DataGrig1.DataSource = rs End Sub Добавлено ' открытие множества форм frmMyForm Dim f As frmMyForm For i = 1 To iFormNeeded Set f = New frmMyForm f.Show Next |