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

Macros et VBA Excel Discussion :

Remplir table access avec excel [XL-2003]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 19
    Par défaut Remplir table access avec excel
    Bonjour à tous,

    Voilà je suis tout nouveau ici, je suis en stage en entreprise et j'ai pour but
    de remplir une page access (également la mettre à jour) avec des informations contenues dans une page excel (et inversement, remplir une page excel avec access, mais ça j'y suis arrivé).

    J'ai observé plusieurs réponses pour parcourir un tableau excel via VBA, mais mon souci viens que le tableau comporte des blancs et des informations isolées inutiles pour la plupart, comment faut il procéder pour parcourir une portion du tableau en colonnes et lignes?
    Est ce une meilleur idée d'utiliser range ou cells?

    J'espère être compréhensible, merci d'avance pour ceux qui se pencheront sur mon souci!

  2. #2
    Membre éprouvé
    Homme Profil pro
    Consultant comptable
    Inscrit en
    Mai 2011
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant comptable

    Informations forums :
    Inscription : Mai 2011
    Messages : 137
    Par défaut
    Tu importe tout simplement ta feuille excel dans access (click droit dans les tables, importer).
    Si c'est une plage que tu veux importer tu nomme ta plage dans excel et tu l'importe (que la plage) dans access.

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 19
    Par défaut
    J'y ai songé, malheureusement, le fichier excel est étrangement fait, et des données incompatibles sont placées dans les mêmes colonnes. Il faudrait que je mette toutes ces données sous un même type de manière automatique, c'est pour celà que je souhaiterais observer chaque case une à une (prévenir les mauvaises utilisations).

  4. #4
    Membre éprouvé
    Homme Profil pro
    Consultant comptable
    Inscrit en
    Mai 2011
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant comptable

    Informations forums :
    Inscription : Mai 2011
    Messages : 137
    Par défaut
    Tes données incompatible doivent être des espaces (que tu peux supprimer grace à trim en vba ou grace à la fonction remplacer du menu)

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 19
    Par défaut
    Non, ce ne sont pas des espaces, des données numérique ont été écrites sous forme de texte, certaines cases notamment devraient contenir des numéros de téléphone et contiennent à la place 2 numéros séparés par un slash, ou la mention "néant".
    Ma fonction vba sera appellée par un bouton et devra réparer toutes les erreurs, je m'occupe des erreurs une par une mais il me faudrait une idée pour parcourir le tableau case à case, peut être une double boucle, mais dans ce cas qu'utiliser comme variable, des cells?

  6. #6
    Membre éprouvé
    Homme Profil pro
    Consultant comptable
    Inscrit en
    Mai 2011
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant comptable

    Informations forums :
    Inscription : Mai 2011
    Messages : 137
    Par défaut
    A mon avis il va falloir que tu liste toutes les modifications et que dans chaque cellule tu fasse les modifications nécéssaire (en utilisant la fonction replace (F1 dans le module VBA pour comprendre son fonctionnement))

    Pour moi une simple boucle en for...next devrait suffire je ne vois pas pourquoi une double boucle

  7. #7
    pgz
    pgz est déconnecté
    Expert confirmé Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Par défaut
    Bonjour.

    Citation Envoyé par Autotoaster Voir le message
    Ma fonction vba sera appellée par un bouton et devra réparer toutes les erreurs, je m'occupe des erreurs une par une mais il me faudrait une idée pour parcourir le tableau case à case, peut être une double boucle, mais dans ce cas qu'utiliser comme variable, des cells?
    Tu peux charger toute la plage dans une variable tableau. Si tu ne sais pas, c'est en FAQ.
    Tu peux alors traiter sans perte de temps les données. Pour les scruter, tu fais une double boucle compteur1 = ligne, compteur2 = colonne.

    Quand ton tableau est nettoyé, tu ouvres un jeu d'enregsitrement ADO ou DAO sur la table ACCESS que tu dois mettre à jour.

    Par manipulation du jeu, tu ajoutes les données valides.

    Et voilà. Un vrai beurre!

    Cordialement,

    PGZ

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

Discussions similaires

  1. Exporter la table Access vers Excel avec VBA
    Par ivoratparis dans le forum VBA Access
    Réponses: 6
    Dernier message: 29/01/2014, 14h09
  2. [XL-2010] Macro Excel pour import table Access avec sélection
    Par rosema dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 19/05/2013, 11h35
  3. Réponses: 10
    Dernier message: 06/08/2010, 23h01
  4. mis à jour des tables access avec un dossier excel
    Par sweetty dans le forum Modélisation
    Réponses: 1
    Dernier message: 12/07/2007, 10h34
  5. [VBE]Effacer le contenu d'une table Access avec Excel
    Par Mut dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 14/06/2006, 12h56

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