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 :

vider et mettre à jour une table à partir d'une autre base de donnée [AC-2016]


Sujet :

VBA Access

  1. #1
    Membre du Club
    Inscrit en
    Juin 2007
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 37
    Points : 47
    Points
    47
    Par défaut vider et mettre à jour une table à partir d'une autre base de donnée
    Bonjour

    J'ai deux deux bases de données,je voudrais savoir comment vider et mettre à jour une table d'une base A à partir d'une autre base de donnée B sachant que les deux tables ont le même nom (TableXX) et même Champs.
    et merci.

  2. #2
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 637
    Points : 14 611
    Points
    14 611
    Par défaut
    bonsoir,
    pour vider la table distante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Delete * FROM [MS Access;Database=D:\DVP\mabase0.accdb].Employés;
    pour une mise à jour:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    UPDATE [MS Access;Database=D:\DVP\mabase0.accdb].Employés 
    INNER JOIN Employés AS Employés_1 ON Employés.IdEmployé = Employés_1.IdEmployé SET Employés.Poste = [Employés_1].[poste]
    WHERE (((Employés_1.IdEmployé)=1));
    pour ajouter:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    INSERT INTO Employés ( IdEmployeur, Poste ) IN 'D:\DVP\MaBase0.accdb'
    SELECT Employés.IdEmployeur, Employés.Poste
    FROM Employés;
    en mode création, on peut préciser où se trouve la base dans la feuille de propriétés de la table :

    Nom : qbe_base_distante.JPG
Affichages : 410
Taille : 19,4 Ko

    et également pour la requête ajout:

    Nom : qbe_base_distante_Ajout.JPG
Affichages : 457
Taille : 43,1 Ko
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  3. #3
    Membre du Club
    Inscrit en
    Juin 2007
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 37
    Points : 47
    Points
    47
    Par défaut Merci
    Merci pour votre aide, et pour vider deux tables dans une base externe?

  4. #4
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 637
    Points : 14 611
    Points
    14 611
    Par défaut
    et pour vider deux tables dans une base externe?
    2 fois plus de requêtes DELETE ...
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  5. #5
    Membre du Club
    Inscrit en
    Juin 2007
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 37
    Points : 47
    Points
    47
    Par défaut Merci
    Merci pour votre aide.

  6. #6
    Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2022
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Mars 2022
    Messages : 115
    Points : 60
    Points
    60
    Par défaut
    BOnjour à tous,

    J'essaie de modifier une valeur dans une table à partir d'une base différente,
    De plus la base à ouvrir est variable

    J'ai donc utilisé la méthode de @Tee_Grandbois proposée en post 2

    Chez moi ça donnerait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
                monsql2 = "UPDATE [MS Access;Database='" & StrComplet & "'].TabGen SET TabGen.NumEqpt = '" & Me.NumEqpt & "' WHERE (TabGen.Affectation like '" & Me.Affectation & "')"
                DoCmd.RunSQL monsql2
    où StrComplet est le chemin + le nom du fichier avec son extension

    Et je n'arrive qu' à obtenir un vilain message "Erreur d’exécution 3055 - Nom de fichier incorrect"
    j'ai essayé plusieurs choses qui ne marchent pas non plus
    J'ai vérifié mon chemin et mes noms de fichier : pas de pb

    Alors, est-ce juste un pb de syntaxe ou plus grave ? (je suis en Access2010 aujourd'hui et ne peux pas tester en version supérieure)

    Merci par avance,

    Nemog

  7. #7
    Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2022
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Mars 2022
    Messages : 115
    Points : 60
    Points
    60
    Par défaut
    Bon, j'ai réussi d' une autre manière :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    monsql2 = "UPDATE TabGen IN '" & StrComplet & "' SET TabGen.NumEqpt = '" & Me.NumEqpt & "' WHERE (TabGen.Affectation like '" & Me.Affectation & "')"

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2010] Mise à jour d'une table identique d'une autre base de données
    Par mcharmat dans le forum IHM
    Réponses: 4
    Dernier message: 05/11/2014, 20h16
  2. mise a jour de table sur une autre base de donnée
    Par didinedz dans le forum Réplications
    Réponses: 2
    Dernier message: 07/06/2012, 17h06
  3. [AC-2000] Mettre à jour un champs à partir d'un autre
    Par falco- dans le forum IHM
    Réponses: 2
    Dernier message: 02/06/2009, 09h54
  4. Réponses: 2
    Dernier message: 18/01/2008, 10h10
  5. Réponses: 1
    Dernier message: 20/06/2006, 19h19

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