Accueil
Accueil Le Club Delphi Kylix C C++ Java J2EE DotNET & C# Visual Basic Access Pascal Dev Web PHP ASP XML UML SQLSGBD Windows Linux Autres
logo

precedent    sommaire    suivant   


Comment effacer les relations entre les tables ?
auteur : Cafeine
Function xDropRelations()
Dim Rel As Relation
    For Each Rel In CurrentDb.Relations
        Debug.Print "effacement de la relation [" & Rel.Table & "]![" & Rel.Fields(0).name & "] -=-> _
                         & "[" & Rel.ForeignTable & "]![" & Rel.Fields(0).ForeignName & "]"
        CurrentDb.Relations.Delete Rel.name
    Next Rel
End Function

Comment supprimer une relation en VBA ?
auteur : Maxence HUBICHE

CurrentDb.Relations.Delete "NomTableUnNomTableDeux" 

Comment créer une relation en VBA ?
auteur : Maxence HUBICHE
Pour exécuter ce code il faut activer la référence : Microsoft DAO 3.x Object Library
   'On crée une relation et définit ses propriétés. 
Dim rel as DAO.Relation 
 'Définit les attributs de l'objet Relation pour appliquer l'intégrité référentielle. 
Set rel = Currentdb.CreateRelation("CommandesEmployés", "Employés", "Commandes") 
 ' On crée un champ dans la collection Fields de l'objet Relation 
rel.Attributes = dbRelationDeleteCascade + dbRelationUpdateCascade 
 ' On ajoute le champ à l'objet Relation et l'objet
Set chp = rel.CreateField(" employé") ' Fournit le nom du champ clé externe. 
chp.ForeignName = " employé"  
rel.Fields.Append chp 
Currentdb.Relations.Append rel
lien : fr Définition et manipulation de données avec DAO par Tofalu
lien : faq Comment déclarer une référence dans MS-Access ?

Détruire automatiquement la table des erreurs qui peut se créer lors d'une importation
auteurs : Gaël Donat, Cafeine
Cette table se nomme toujours : <nom de ton fichier sans l'extension>_ImportErrors
Il suffit de vérifier l'existence de la table, puis, si elle existe de faire :
DoCmd.DeleteObject acTable, fichier & "_ImportErrors"
ou
CurrentDB.TableDefs.Delete fichier & "_ImportErrors"
En complément, voici comment puger les tables d'erreurs de la base :

Fonctionne sur toutes les versions d'Access depuis Access 97.

Function PurgeErreurs()

Dim tbl As TableDef
For Each tbl In CurrentDb.TableDefs
 If InStr(tbl.Name, "importerrors") Then
    Debug.Print "Effacement de " & tbl.Name
    CurrentDb.TableDefs.Delete tbl.Name
 End If
Next tbl

Set tbl = Nothing

End Function

Comment trouver en VBA le champ clé primaire d'une table ?
auteur : Team Access
Function TrouverCP(nom_table As String) As String

    Dim bds As Database, dft As TableDef, chp As Field
    Dim idx As Index

    ' base de données en cours.
    Set bds = CurrentDb
   
    ' Retourne un objet Tabledef pointant sur une table.
    Set dft = bds.TableDefs(nom_table)

    ' Parcourt la collection Indexes de l'objet TableDef.
    For Each idx In dft.Indexes

        ' Vérifie la propriété Primary de l'index de
        ' l'objet Recordset.     
        If idx.Primary Then
             For Each chp In idx.Fields
                 TrouverCP = chp.Name   'clef primaire trouvé
                 Set bds = Nothing
               Exit Function ' on quitte la fonction
            Next chp
        End If
    Next idx

    Set bds = Nothing
TrouverCP = "null"  ' pas de clef primaire trouvé
End Function

precedent    sommaire    suivant   

Consultez les autres F.A.Q's


Les sources présentés sur cette pages sont libre de droits, et vous pouvez les utiliser à votre convenance. Par contre cette page de présentation de ces sources constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright ©2004  Developpez LLC. Tout droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérets. Cette page est déposée à la SACD.

Vos questions techniques : forum d'entraide Accueil - Publiez vos articles, tutoriels, cours et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones. Nous contacter - Copyright 2000..2005 www.developpez.com