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 :

CopyFromRecordset vs MAJ cellule par cellule


Sujet :

VBA Access

  1. #1
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    981
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 981
    Points : 1 028
    Points
    1 028
    Billets dans le blog
    36
    Par défaut CopyFromRecordset vs MAJ cellule par cellule
    Bonjour à tous et très bonne année 2019


    Quelle méthode est la plus performante de la MAJ d'un fichier Excel via

    CopyFromRecordset vs cellule par cellule

    Considérant qu'il existe une contrainte de MAJ ligne par ligne des champs car le fichier Excel vit indépendamment des données de la base de données Access
    Mal nommer un objet, c'est ajouter au malheur de ce monde, car le mensonge est justement la grande misère humaine, c'est pourquoi la grande tâche humaine correspondante sera de ne pas servir le mensonge
    Poésie 44, n° 17 - Albert Camus

    Mes réponses vous ont aidés, un clic sur leur pouce vert
    Bonjour chez vous

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour et bonne année.

    Dans une autre discussion je t'es fournir un lien vers un fichier zip qui contient une vidéo qui montre comment lié dans une requête une table Access et une feuille Excel.

    Tu peux ainsi faire des requêtes insert et Update dans Excel en fonction des valeurs Access.

    Seule le delete n'existe pas en Sql Excel.

  3. #3
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    981
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 981
    Points : 1 028
    Points
    1 028
    Billets dans le blog
    36
    Par défaut
    Bonjour dysorthographie


    Je te remercie pour cette vidéo.

    De ce que j'en ai vu, il y est expliqué comment charger des données d'une feuille Excel dans une table Access en s'affranchissant de la commande transferspreadsheet et en utilisant du SQL. Cela m'ouvre de nouvelles perspectives mais avec tout ce savoir que tu transmets ça commence à faire cocotte minute dans ma tête

    Info top que je vais appliquer de ce pas



    Toutefois, comme expliqué dans le post auquel tu fais référence, mon contexte est différent car j'ai les contraintes suivantes
    • Chargement de fichiers CSV selon une certaine fréquence par jour dans une base de données (backEnd) --> Methode actuelle avec transferspreadsheet pourrait être remplacée par du SQL après transformation du CSV en Excel
    • Cette base de données est le référentiel Data (backEnd) pour de multiples bases de donnnees métiers (frontEnd)
    • chaque frontEnd est la source de données de MAJ de fichiers Excel spécifiques
    • Les fichiers Excel sont les supports de travail des utilisateurs
    • Les fichiers Excel sont MAJ à la même fréquence que celle du réf. Data
    • Les données de MAJ provenant du réf. data sont le résultat de traitements complexes de données propres au frontEnd
    • Les lignes qui existent dans le recordset mais pas dans un fichier Excel sont ajoutées au fichier Excel et si existent dans les deux alors MAJ de la ligne dans le fichier Excel
    • Les données du réf. data peuvent être modifiées entre J et J+n par les utilisateurs dans le fichier Excel. Ces données modifiées ne doivent pas être ecrasées par les données de la MAJ du réf. data.
    • Cerise sur le gâteau, une couleur est appliquée sur chaque ligne en fonction de valeur du recordset
    Mal nommer un objet, c'est ajouter au malheur de ce monde, car le mensonge est justement la grande misère humaine, c'est pourquoi la grande tâche humaine correspondante sera de ne pas servir le mensonge
    Poésie 44, n° 17 - Albert Camus

    Mes réponses vous ont aidés, un clic sur leur pouce vert
    Bonjour chez vous

  4. #4
    Membre expérimenté
    Homme Profil pro
    Développeur VBA Access
    Inscrit en
    Avril 2006
    Messages
    1 109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur VBA Access

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 109
    Points : 1 535
    Points
    1 535
    Par défaut
    Bonjour,

    J'ai du mal à comprendre à quoi correspond J et J+n, est-ce une période de temps ?
    De plus, comment est définie pour le système l'information de modification des données par l'utilisateur ?

  5. #5
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    981
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 981
    Points : 1 028
    Points
    1 028
    Billets dans le blog
    36
    Par défaut
    Bonjour ilank,

    Merci pour ton aide

    Je vais essayé d'être plus clair

    Soit un d'un fichier Excel, si on considère une ligne (et vaut pour toutes) alors les valeurs des X premières colonnes sont renseignées par un recordSet Access. Le X+1+Y colonnes sont des valeurs modifiées par l'utilisateur manuellement

    Je pensais faire ça via SQL mais j'ai rencontré des problèmes Voir Ici
    Mal nommer un objet, c'est ajouter au malheur de ce monde, car le mensonge est justement la grande misère humaine, c'est pourquoi la grande tâche humaine correspondante sera de ne pas servir le mensonge
    Poésie 44, n° 17 - Albert Camus

    Mes réponses vous ont aidés, un clic sur leur pouce vert
    Bonjour chez vous

  6. #6
    Membre expérimenté
    Homme Profil pro
    Développeur VBA Access
    Inscrit en
    Avril 2006
    Messages
    1 109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur VBA Access

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 109
    Points : 1 535
    Points
    1 535
    Par défaut
    Bonjour informer,

    j'ai toujours du mal à comprendre.
    Comment ton système connait-il pour chaque ligne les colonnes X+1+Y modifiées par l'utilisateur ?

  7. #7
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    981
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 981
    Points : 1 028
    Points
    1 028
    Billets dans le blog
    36
    Par défaut
    Citation Envoyé par ilank Voir le message
    Bonjour informer,

    j'ai toujours du mal à comprendre.
    Comment ton système connait-il pour chaque ligne les colonnes X+1+Y modifiées par l'utilisateur ?
    Bonjour ilank,


    Pour dire vrai, presque toutes les cellules peuvent être modifiées par l'utilisateur. Une couleur est alors appliquée sur la cellule modifiée par l'utilisateur. Et à la MAJ il faut aussi tester si colorié ou pas !

    Si je reprends le cas des cellules des X colonnes, elles sont par défaut MAJ/Ajoutées par un recordSet Access. Les cellules des X+1+Y colonnes sont des cellules qui sont purement utilisateur, jamais modifié par les données du recordset. Pour ce faire, les utilisateurs ouvre simplement le fichier Excel.
    Par conséquent, entre J et J+1, le fichier Excel peut être modifié sur les X+1+Y colonnes par l'utilisateur

    La MAJ/Ajout se fait en comparant les données de certains champs du recordset avec les colonnes équivalentes dans le fichier Excel via DAO
    Mal nommer un objet, c'est ajouter au malheur de ce monde, car le mensonge est justement la grande misère humaine, c'est pourquoi la grande tâche humaine correspondante sera de ne pas servir le mensonge
    Poésie 44, n° 17 - Albert Camus

    Mes réponses vous ont aidés, un clic sur leur pouce vert
    Bonjour chez vous

Discussions similaires

  1. comment peut on remlir une datagrid cellule par cellule?
    Par otyv84 dans le forum Silverlight
    Réponses: 2
    Dernier message: 15/03/2011, 14h38
  2. [E-03] Comparer 2 fichiers excel cellule par cellule
    Par Froggy007 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 29/10/2008, 21h00
  3. Réponses: 2
    Dernier message: 27/12/2007, 10h32
  4. [C#-1.1] gestion datagrid cellule par cellule
    Par philo71 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 15/11/2006, 17h08
  5. trie de ligne par analyse cellule par cellule
    Par boboz2 dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 22/06/2006, 15h43

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