IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

Créer un bouton pour gérer la source des tables liées


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    162
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 162
    Par défaut Créer un bouton pour gérer la source des tables liées
    Bonjour,
    j'ai une base "programme" qui utilise des tables liées d'une base "data"

    Je voudrais ajouter un bouton dans ma base programme pour que l'utilisateur puisse changer la source des tables liées, l'équivalent du "Outils > Utilitaires de base de données > Gestionnaire de table liée" dans Access.

    Est ce possible ? si oui comment ?
    D'avance merci
    Fred

  2. #2
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Août 2007
    Messages
    184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2007
    Messages : 184
    Par défaut
    Bonjour

    Sous access97, j'utilise ce code

    bien sur au préalable , avec une fonction de type GetOpenFile... tu peux ouvrir un boite de dialogue pour que l'utilisateur choisisse un fichier qui tu passeras en paramètre au code ci-dessous.
    (recherche dans la FAQ et les tutos)



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
     
    Function ModifAttache(strDBPath)
    ' Modification simple des attaches
    '
    ' sur le modèle de fGetLinkPath de Dev Ashish
    ' 21/07/2005
        Dim vieuxnom As String, stPath As String
        Dim loTd As TableDef
        Dim dbs As Database
        Dim I, nb As Integer
        I = 0
        CurrentDb.TableDefs.Refresh
        ' nb de table
        nb = CurrentDb.TableDefs.Count
        ' barre de progression
    '    SysCmd acSysCmdInitMeter, "Text à afficher", nb 'Définit le texte à afficher et la valeur maximale de la jauge.
     
     
        For Each loTd In CurrentDb.TableDefs
            On Error Resume Next
           stPath = dbs.TableDefs(loTd.Name).Connect
           If stPath = Null Then
            Else
                I = I + 1
    '           SysCmd acSysCmdUpdateMeter, "Text à afficher", I 'Définit le texte à afficher et la valeur actuelle de la jauge.
     
                vieuxnom = fGetLinkPath(loTd.Name)
                loTd.Connect = ";Database=" & strDBPath
            '    loTd.Connect = ";" & strDBPath
     
                loTd.RefreshLink
            Debug.Print loTd.Name; " "; fGetLinkPath(loTd.Name); " à la place de : "; vieuxnom
     
                ' bds.TableDefs.Append
     
            End If
        Next loTd
        Set loTd = Nothing
        CurrentDb.TableDefs.Refresh
    '    SysCmd acSysCmdRemoveMeter 'Supprime la jauge d'avancement
        MsgBox "Terminé." & vbCrLf & I & " tables attachées pointent désormais vers la base de données " & strDBPath, vbOKOnly, "Procédure terminée avec succés"
    End Function
    fevec

Discussions similaires

  1. Réponses: 30
    Dernier message: 24/10/2011, 18h37
  2. [Lazarus] Créer un bouton et gérer des événements
    Par ryuphenix dans le forum Lazarus
    Réponses: 1
    Dernier message: 01/08/2010, 09h36
  3. [AC-2007] Créer une BDD pour gérer des appareils
    Par ICETEA54 dans le forum Modélisation
    Réponses: 3
    Dernier message: 19/11/2009, 21h32
  4. Réponses: 4
    Dernier message: 20/08/2006, 16h20
  5. Réponses: 2
    Dernier message: 27/04/2006, 21h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo