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

Access Discussion :

Après importation, eviter les doublons


Sujet :

Access

  1. #1
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 107
    Points : 52
    Points
    52
    Par défaut Après importation, eviter les doublons
    Bonjour,
    Access 2k3
    J'importe le contenu d'un classeur excel dans deux tables différentes (Selon les colonnes).
    Ma préoccupation:
    1-:Lors de l'importation dans la 1re table, j'aimerais ne pas importer les données déjà existantes dans cette table.
    2-:Après importation, vider le contenu du classeur excel.
    Merci

  2. #2
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 600
    Points
    24 600
    Par défaut
    Bonjour,

    Il y a plusieurs solutions pour ce problème.

    1 attacher le fichier excel, comme une table et faire une requête qui écartera les doublons et ecrira le résultat dans la table destination.

    2 importer les données d'excel, faire la requete pour écarter les doublons et écrire le resultat.

    3 vérifier chaque ligne de la feuille excel (via vba et recordset) pour écarter les doublons puis écrire les enregistrements correspondant dans la table destination (plus long en developpement et exécution)

    En ce qui concerne la suppression des valeurs excel, on peut la réaliser avec les 3 méthodes.

    Notez que la solution 1 et 2 sont similaires.

    à bientot
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  3. #3
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 107
    Points : 52
    Points
    52
    Par défaut
    Salut,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub CmdImporter_Click()
    DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "table1", "D:\feuilletype.xls", True, "A1:H10"
    Me.maliste.Requery
    End Sub
    Voici le code que j'utilise pour l'importation du classeur excel.
    Que mettre comme code à la suite afin d'écarter les doublons?
    Pour la suppression dudit classeur (Je le supprime afin d'éviter un nouveau clic qui remplirai ma table, mais vu qu'on peut supprimer les doublons ... )
    Il y a plusieurs solutions pour ce problème.
    Pourrais-je avoir le descriptif excact d'une solution : (Sans oublier que je suis nouveau dans le developpement (Candidat au titre de membre
    Merci

  4. #4
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 600
    Points
    24 600
    Par défaut
    Pour faire au plus simple il vaut mieux utiliser la solution 1.

    • Après l'attachement du classeur tu te retrouve avec une table attachée.

      Après l'import il faut lancer une requête construite grâce au générateur de requête "Assistant requête de non correspondance". (onglet requête/nouveau...)
      Une fois celle-ci créée et testée tu la transforme en requête d'ajout, c'est super simple, il te faut utiliser le menu Requête/requête ajout... et donner le nom de ta table destination.

      Crée ensuite une requête de suppression sur ta table classeur.



    Dans le cas d'une table (classeur) importé il te faut jouer avec l'automation EXCEL c'est un peu plus compliqué. Mais ça vaut le coup de s'y pencher pour info.

    espérant avoir répondu à ta question.

    à bientôt
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  5. #5
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 107
    Points : 52
    Points
    52
    Par défaut
    Bonjour,
    Il se trouve qu'après importation, j'ai des lignes vides. Comment les éviter :
    Crée ensuite une requête de suppression sur ta table classeur.
    ...Le code VBA...Si c'est pas trop demandé...
    Dans le cas d'une table (classeur) importé il te faut jouer avec l'automation EXCEL c'est un peu plus compliqué. Mais ça vaut le coup de s'y pencher pour info.
    c'est à dire .... : :
    Merci

  6. #6
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 107
    Points : 52
    Points
    52
    Par défaut
    Salut,
    Personne pour m'aider : :

  7. #7
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 600
    Points
    24 600
    Par défaut
    pour l'automation EXCEL voir la faq et le forum il y a une foule d'exemples et de posts sur ce sujet largement éculé

    Pour les lignes vides :

    Positionne une condition Not null dans les critères du champ clef (par exemple) de ta table en provenance d'excel.
    Tu peux le faire directement lors de l'élimination des doublons ou faire une requête après coup.

    à toi de choisir.

    à bientôt.
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

Discussions similaires

  1. [MySQL] Eviter les doublons à l'insertion dans une base
    Par leloup84 dans le forum PHP & Base de données
    Réponses: 23
    Dernier message: 26/01/2006, 15h26
  2. [Débutant][XSLT]Eviter les doublons
    Par leminipouce dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 21/10/2005, 11h34
  3. hash et Tie , eviter les doublons
    Par bluecurve dans le forum Langage
    Réponses: 5
    Dernier message: 12/10/2005, 16h39
  4. Eviter les doublons
    Par cyrill.gremaud dans le forum ASP
    Réponses: 5
    Dernier message: 14/09/2005, 12h37
  5. [langage] 2 fichier dans 1 en evitant les doublons
    Par remixxl dans le forum Langage
    Réponses: 6
    Dernier message: 26/07/2004, 17h05

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