Ouverture:

DAO

Data1.DatabaseName = FicBdd
Data1.RecordSource = « [MonChamp] »
Data1.Refresh

ADO

AdoData.ConnectionString = « Provider=Microsoft.Jet.OLEDB.4.0
Data Source= » & FicBdd & « ;Persist Security Info=False »
AdoData.RecordSource = « MonChamp »
AdoData.Refresh

RecordCount:

DAO

De 0 à n-1

ADO

De 1 à n

Find:

DAO

Rec.FindFirst « Criteria =  » & toto
if Not Rep.NoMatch then

ADO

Rec.MoveFirst
Rec.Find « Criteria =  » & toto
if Rec.AbsolutePosition > 0 then

Update:

DAO

Rec.edit
Rec.fields(« Toto ») = MaValeur
Rec.update

ADO

Rec.update « Toto »,MaValeur

Le data temporaire (sans contrôle):

DAO

Global MaTmpBdd As Database
Global MonTmpRec As Recordset
Set MaTmpBdd = OpenDatabase(« Mettre le nom de la base ici »)
Set MonTmpRec = MaTmpBdd.OpenRecordset(« Mettre le nom de la table ici », dbOpenDynaset)

ADO

‘Ouvre la BDD
Dim MaBase As ADODB.Connection
Set MaBase = New ADODB.Connection
MaBase.Open MaConnString

‘Ouvre la table
Dim MonRec As ADODB.Recordset
Set MonRec = New ADODB.Recordset
MonRec.CursorType = adOpenKeyset
MonRec.LockType = adLockOptimistic
MonRec.Open MaTable, MaBase, , , adCmdUnknown

MonCode

MonRec.Close

MaBase.Close

Attention: Pour ajouter un enregistrement, remplacer adCmdUnknown par adCmdTable.
Comme l’emploi est plus compliqué, on peut aussi créer un contrôle « fourre tout ».

    With AdoTmp
        .ConnectionString = AdoData1.ConnectionString
        .RecordSource = « SELECT * FROM MaTable »
        .Refresh
    End With

    With AdoTmp.Recordset
        .MoveLast
    End With

  • Si l’on crée un nouvel enregistrement avec numérotation automatique dans une clause With…. End With, on ne peut récupérer le num auto créé qu’en sortant de cette clause, puis éventuellement en en recréant une nouvelle.
  • La MsHFlexgrid ne s’occupe pas du « Screen.MousePointer ». Il faut donc gérer « MaGrille.MousePointer ».