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 :

Importation données excel


Sujet :

Access

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Chargée de mission
    Inscrit en
    Octobre 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Chargée de mission
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2014
    Messages : 6
    Points : 1
    Points
    1
    Par défaut Importation données excel
    Bonjour à tous,
    Je souhaite intégrer un fichier excel dans ma base de données access, plus précisément dans la table contact. Lorsque j'intègre donc ce fichier, access crée de nouvelles "fiches contacts" au lieu de mettre à jour les fiches existantes.
    Pourriez-vous me dire si d'une part il est possible d'intégrer des mises à jour traitées en amont sur excel dans une base contact "acesse" en conservant des champs type mails téléphones, date de naissance déjà sous access ?
    Merci beaucoup.
    Amandine

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Bonsoir,

    Je souhaite intégrer un fichier excel dans ma base de données access, plus précisément dans la table contact. Lorsque j'intègre donc ce fichier, access crée de nouvelles "fiches contacts" au lieu de mettre à jour les fiches existantes.
    Comment tu fait ton transfert de données ? Si tu veux mettre à jour tes données existantes, comment faire savoir à Access quel contact mettre à jour?

    Pourriez-vous me dire si d'une part il est possible d'intégrer des mises à jour traitées en amont sur excel dans une base contact "acesse" en conservant des champs type mails téléphones, date de naissance déjà sous access ?
    Oui, c'est possible.

    Il faudrait que tu nous donnes plus de détails.

    Cordialement,
    Mandresy
    "Je ne sais qu'une chose, c'est que je ne sais rien" Socrate

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.

    Merci, c'est toujours sympa de recevoir des de votre part

  3. #3
    Nouveau Candidat au Club
    Femme Profil pro
    Chargée de mission
    Inscrit en
    Octobre 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Chargée de mission
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2014
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    Bonjour,
    N'étant pas une experte d'Access, je vais tenter d'être la plus claire possible. J'ai base de données de contacts particuliers composée de plusieurs champs : nom, nom de jeune fille, prénom, adresse, mail, téléphone, date de naissance...
    Voulant mettre à jour les adresses postales de mes contacts, j'ai exporté ma base sur excel pour ensuite la soumettre à un traitement de la Poste (Optimis et Charade). La Poste m'a retournée mon fichier sous format excel. Je l'ai importé dans access avec la manipulation suivante : Données externes - données excel - ajouter une copie à une table. C'est certainement une mauvaise manipulation puisqu'access me crée de nouvelles fiches.
    Ce que je voudrais, c'est qu'access retrouve mes fiches contacts et viennent écraser les données mise à jour par la poste c'est-à-dire les champs adresse1, adresse2, codepostal et ville.
    Merci de votre aide !
    Bonne journée

  4. #4
    Membre du Club
    Homme Profil pro
    NC
    Inscrit en
    Janvier 2013
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : NC
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Janvier 2013
    Messages : 61
    Points : 51
    Points
    51
    Par défaut
    Bonjour,

    Il est préférable d'exporter la table de ACCESS vers EXCEL, ensuite d'apporter toutes les modifications nécessaires sur le fichier EXCEL.
    Puis effectuer une importation dans une table vide avec les nouvelles données à jour.
    On peut vider (sous ACCESS 2013) une table en sélectionnant toutes les valeurs pour les supprimer cela éviter les doublons à l'importation.

    Bonne journée.

  5. #5
    Nouveau Candidat au Club
    Femme Profil pro
    Chargée de mission
    Inscrit en
    Octobre 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Chargée de mission
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2014
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    Bonjour,
    Merci pour votre réponse. Veuillez m'excuser mais j'ai oublié de préciser que la table contact qui compte 25 000 adresses est rattachée à une autre table. La manip que vous proposez est-elle possible en prenant en compte le rattachement ) une autre table ?
    De plus, pourriez-vous m'éclaircir un peu plus la façon de procéder ?
    Merci beaucoup.
    Bonne journée.

  6. #6
    Membre expert
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2012
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 1 869
    Points : 3 448
    Points
    3 448
    Par défaut
    Bonjour AmandineJOC,

    Un troisième avis. Si tu veux juste mettre à jour les données que tu as déjà, je ne crois pas que la solution de breweryfr soit la bonne. Pour mettre à jour des données, il te faut un identifiant pour ces données. Un exemple: J'ai la table T_Contact avec un champ NUM_CONTACT et les autres champs. J'ai le fichier Excel avec la colonne NUM_CONTACT qui correspond au numéro de contact de ta table T_Contact. Une requête mise à jour basée sur le lien numéro de contact va modifier tous tes contacts en insérant les nouvelles données provenant du fichier Excel sans créer de nouvelles entrées dans ta table T_Contact.

    C'était la question que te posais madefemere :
    Comment tu fait ton transfert de données ? Si tu veux mettre à jour tes données existantes, comment faire savoir à Access quel contact mettre à jour?
    Donc pour plus de détails il faudrait que tu donnes la structure des tables impliquées ainsi que la structure de ton fichier Excel.

    Bonne journée
    Ce qui se conçoit bien s’énonce clairement et les mots pour le dire arrivent aisément. Nicolas Boileau
    Si tout est OK, n'oubliez pas de cliquer sur

  7. #7
    Nouveau Candidat au Club
    Femme Profil pro
    Chargée de mission
    Inscrit en
    Octobre 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Chargée de mission
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2014
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    Bonjour Robert1957,
    Merci pour ta réponse.
    Alors, la table contact (cf image ci-jointe) est composée des champs Titre, NOM, Prénom, Adresse1, Adresse2, Codepostal, Ville, Mail...
    Le fichier excel comporte les champs : Titre, Nom, Nomde jeune fille, Adresse1, Adresse2, CodePOstal et Ville. J'ai importé ce fichier de données mises à jour dans une table qui s'appelle ORD44 (cf. Image Table ORD).
    Est-ce que ces infos étaient bien les infos demandées?

    Merci.
    A bientôt.
    Images attachées Images attachées   

  8. #8
    Membre expert
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2012
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 1 869
    Points : 3 448
    Points
    3 448
    Par défaut
    Bonjour AmandineJOC,

    C'est exactement cela. Maintenant j'ai une mauvaise nouvelle pour toi. La manière la plus solide de travailler aurait été d'avoir dans la table importée le champ RefContact de la table Contact. Ce champ est une clé primaire et donc unique et non null et donc aucune erreur possible.

    Une façon de faire avec ce que tu as est de vérifier plusieurs champs. Donc une requête mise à jour qui vérifie que Contact.Nom = ORD442111-VERT.Nom et Contact.Prénom = ORD442111-VERT.Prénom et Contact.NomJeuneFille = ORD442111-VERT.NomJeuneFille. Mais parce qu'il y a un mais, si 2 individus différents avaient le même nom + le même prénom et le même nom de jeune fille les données ne seraient transférées que dans un individu et l'autre serait ignoré. De plus si un individu n'a pas de nom de jeune fille le lien ne se fera pas et les données ne seront pas transférées.

    Si tu peux recommencer ton processus pour récupérer les adresses en incluant cette fois la clé primaire de ta table contact, je crois que ce serait la meilleure solution. A partir de là, une simple requête mise à jour avec comme lien refContact de tes deux tables et le tour est joué.

    Bonne journée
    Ce qui se conçoit bien s’énonce clairement et les mots pour le dire arrivent aisément. Nicolas Boileau
    Si tout est OK, n'oubliez pas de cliquer sur

  9. #9
    Nouveau Candidat au Club
    Femme Profil pro
    Chargée de mission
    Inscrit en
    Octobre 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Chargée de mission
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2014
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    Bonjour Robert,
    Merci beaucoup pour ta réponse. Malheureusement je ne peux avoir le fichier excel avec la référence contact. J'ai donc pris l'option 2 en réalisant une mise à jour par le nom et le prénom. Et là je rencontre une difficulté, un message d'erreur s'affiche : La taille du résultat de la requête est supérieure à la taille d'une base de données (2Go) ou bien l'espace temporaire sur le disque est insuffisant pour stocker le résultat .
    J'ai bien évidemment compacté la base dont le poids est de 61 mo et de diminuer le fichier excel à seulement 100 lignes. Cela ne fonctionne toujours pas. L'espace temporaire semble suffisant.
    Est-ce que cela est possible pour ce type de requête?
    Merci beaucoup.
    Bonne journée

  10. #10
    Membre expert
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2012
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 1 869
    Points : 3 448
    Points
    3 448
    Par défaut
    Bonjour AmandineJOC,

    Est-ce que ta requête ressemble à ça en SQL:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE Contact INNER JOIN [ORD442111-VERT] ON (Contact.Prenom = [ORD442111-VERT].Prenom) AND (Contact.Nom = [ORD442111-VERT].Nom) SET Contact.Adresse1 = [ORD442111-VERT].[Adresse1], Contact.Adresse2 = [ORD442111-VERT].[Adresse2], Contact.CodePostal = [ORD442111-VERT].[CodePostal], Contact.Ville = [ORD442111-VERT].[Ville];
    Ou l'équivalent avec le QBE d'Access:

    Nom : rqExcel.PNG
Affichages : 271
Taille : 57,5 Ko
    Il ne devrait pas y avoir de problème à mettre 25000 lignes à jour. Ça devrait même être assez rapide.

    Bonne journée
    Ce qui se conçoit bien s’énonce clairement et les mots pour le dire arrivent aisément. Nicolas Boileau
    Si tout est OK, n'oubliez pas de cliquer sur

  11. #11
    Membre du Club
    Homme Profil pro
    NC
    Inscrit en
    Janvier 2013
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : NC
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Janvier 2013
    Messages : 61
    Points : 51
    Points
    51
    Par défaut
    Bonjour,

    Il me semblait qu'il était impossible de créer une clé primaire sur une table liée à un fichier excel.

  12. #12
    Nouveau Candidat au Club
    Femme Profil pro
    Chargée de mission
    Inscrit en
    Octobre 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Chargée de mission
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2014
    Messages : 6
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par Robert1957 Voir le message
    Bonjour AmandineJOC,

    Est-ce que ta requête ressemble à ça en SQL:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE Contact INNER JOIN [ORD442111-VERT] ON (Contact.Prenom = [ORD442111-VERT].Prenom) AND (Contact.Nom = [ORD442111-VERT].Nom) SET Contact.Adresse1 = [ORD442111-VERT].[Adresse1], Contact.Adresse2 = [ORD442111-VERT].[Adresse2], Contact.CodePostal = [ORD442111-VERT].[CodePostal], Contact.Ville = [ORD442111-VERT].[Ville];
    Ou l'équivalent avec le QBE d'Access:

    Nom : rqExcel.PNG
Affichages : 271
Taille : 57,5 Ko
    Il ne devrait pas y avoir de problème à mettre 25000 lignes à jour. Ça devrait même être assez rapide.

    Bonne journée
    Bonjour Robert,
    Merci beaucoup pour ces réponses. La prochaine fois, je veillerai à conservé les clés acess.
    Bonne journée.
    Amandine

Discussions similaires

  1. importe données excel
    Par ssinderella dans le forum VBA Access
    Réponses: 6
    Dernier message: 22/06/2007, 17h59
  2. importation données excel vers sql server2005
    Par ERIC49 dans le forum MS SQL Server
    Réponses: 9
    Dernier message: 24/05/2007, 15h19
  3. Importations données Excel
    Par strapouf dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 25/10/2006, 08h53
  4. [VB.NET] Importation données Excel pour alimenter BDD Sql Server
    Par Aphrauditte dans le forum Windows Forms
    Réponses: 5
    Dernier message: 03/05/2006, 16h24
  5. problème pour importer données excel dans Access
    Par sarah67 dans le forum Access
    Réponses: 8
    Dernier message: 20/02/2006, 08h17

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