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 :

Importer des données csv via un formulaire access dans une table contenant déjà des données


Sujet :

Access

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juin 2018
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Importer des données csv via un formulaire access dans une table contenant déjà des données
    Bonjour le Forum,
    J'ai créé dans Access une table qui contient des informations sur des clients. Chaque lundi je reçois une liste .csv qui doit venir rallonger cette table. Je peux le faire très simplement au niveau de la table mais j'aimerais toutefois savoir s'il serait possible de créer un formulaire avec peut-être un bouton et en cliquant dessus ça irait chercher les données du nouveau fichier .csv et ça ajouterait ces nouvelles données dans la table existante.

    Je suis désolée je suis complètement novice en ce qui concerne Access

    Merci d'avance pour votre réponse

  2. #2
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 410
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 410
    Points : 19 984
    Points
    19 984
    Billets dans le blog
    66
    Par défaut
    Bonjour,

    Il va vous falloir tout d'abord créer une spécification d'importation :

    L'idée c'est d'importer une première fois le csv manuellement, en enregistrant les spécifications d'importation. La table d'importation pourrait s'appeler "T_Import" et la spécification se nommer "ImportSpecs", la commande à utiliser ensuite pour mettre à jour cette table :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.TransferText acImportDelim, "ImportSpecs", "T_Import", chemin, True
    Le code complet :

    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
    Private Sub CmdImportCSV_Click()
    Dim fd As Object
     
         ' Créer un objet FileDialog
         Set fd = Application.FileDialog(3)
     
         ' Ne pas autoriser la sélection multiple
         fd.AllowMultiSelect = False
     
         ' Affichage d'un titre particulier dans la boite de dialogue :
         fd.Title = "Sélectionnez un fichier CSV..."
         ' Effacement de tous les filtres de fichiers éventuels (Extensions) :
         fd.Filters.Clear
         ' Application d'un filtre particulier (On pourrait ajouter d'autres Add en dessous) :
         fd.Filters.Add "Fichiers CSV", "*.*", 1
     
         ' Présélectionner le 2ème type de fichier (images)
         'fd.FilterIndex = 2
     
         ' Afficher la boîte de dialogue
            If fd.Show() Then
             'MsgBox "Vous avez sélectionné le fichier : " _
             & vbCrLf & fd.SelectedItems(1), vbInformation
              chemin = fd.SelectedItems(1)
     
              DoCmd.TransferText acImportDelim, "ImportSpecs", "T_Import", chemin, True
     
             End If
     
         Set fd = Nothing
     
    End Sub
    Cdlt,

  3. #3
    Nouveau Candidat au Club
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Juin 2018
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Bonjour User
    Merci pour votre réponse. Il va falloir que je révise mon Access car là je suis un peu perdue. J'ai voulu créer une nouvelle table avec la spécification mais au moment d'enregistrer Access me dit que la spécification d'importation a été modifiée, est-ce que je veux enregistrer les changements et je réponds oui. Ensuite Access me dit que la clé de recherche n'a été trouvée dans aucun enregistrement. et donc je ne peux pas enregistrer ma nouvelle table.

    Je crois que je n'ai pas le niveau pour m'attaquer à cela et il faut que je prenne quelques cours !

    Merci pour votre aide

    Cordialement

  4. #4
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 410
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 410
    Points : 19 984
    Points
    19 984
    Billets dans le blog
    66
    Par défaut
    Pas le niveau, ça m'étonnerait, il faut surtout de la persévérance

Discussions similaires

  1. [MySQL] Insertion des données d'un formulaire dans une table contenant des clés étrangères
    Par MInfo25 dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 14/03/2017, 15h38
  2. Réponses: 11
    Dernier message: 16/04/2014, 08h05
  3. Réponses: 170
    Dernier message: 12/08/2009, 08h56
  4. Réponses: 5
    Dernier message: 06/11/2005, 11h26

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