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 Word Discussion :

Base de données par copier/coller


Sujet :

VBA Word

  1. #1
    Nouveau Candidat au Club
    Profil pro
    membre association
    Inscrit en
    Octobre 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : membre association
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2012
    Messages : 4
    Points : 1
    Points
    1
    Par défaut Base de données par copier/coller
    Salut à tous. Je suis nouveau en vba et au forum. Mon problème est que je dispose d’un répertoire contenant plus de 600 documents Word (association estudiantine) d’une page chacun et contenant chacun un titre en haut, un saut de ligne blanc, une ligne contenant des noms (auteurs du document), de nouveau une ligne blanche puis un texte. Comment faire pour dresser, dans un nouveau document Word, un tableau de deux colonnes contenant dans la première colonne le titre des communications et dans la seconde le nom des auteurs, de façon à établir une base données pour l’association.
    Je le faisais manuellement mais ça me prenait trop de temps. Merci pour toute aide.

  2. #2
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Il faut utiliser du VBA, mais je pense que tu l'as compris.

    La première étape est de travailler sur les fichiers d'un répertoire.
    File System Object permet de travailler sur les fichiers et les répertoires.

    Ensuite, il faut pour chaque document, l'ouvrir et récupérer les données.

    Pour çà, il faut connaître la structure exacte des documents, le fait de savoir qu'il y a un espace n'est pas sufficant, il faut connaître la nature de cet espace.
    Est-ce un saut de ligne ou un saut de paragraphe.
    Pour les données, est-ce un saut de ligne entre chaque donnée ou un saut de paragraphe.

  3. #3
    Nouveau Candidat au Club
    Profil pro
    membre association
    Inscrit en
    Octobre 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : membre association
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2012
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Salut Heureux-oli,

    Je me doutais bien qu'il fallait travailler manuellement sur les documents afin d’homogénéiser la structure et 'nettoyer' la présentation. Ça prendra sûrement encore plus de temps que de copier/coller à la main. À moins qu'au lieu d'indiquer à VBA quelle ligne et quel paragraphe prendre ou sauter, utiliser la commande RANGE pour copier une plage englobant ce dont j’ai besoin et même débordant un peu, puis une fois tout ceci récupérer sur le nouveau document Word, nettoyer manuellement les sauts et espaces supplémentaires. Vraiment je n’ai pas le courage d’ouvrir les 600 fichiers .doc et copier/coller les données ligne par ligne. Merci en tout cas pour ta réponse, mais je reste preneur de toute suggestion.

  4. #4
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Le tout est de savoir quand Word doit arrêter.

    Pour les fichiers : http://warin.developpez.com/access/fichiers/

  5. #5
    Nouveau Candidat au Club
    Profil pro
    membre association
    Inscrit en
    Octobre 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : membre association
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2012
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Salut Heureux-oli,

    Merci pour le lien et pour ta réponse. Je vais essayer de comprendre un peu car comme je l'ai dit je viens juste de découvrir VBA et je ne sais pas par quel bout commencer; comme on dit chez nous: "Essayer de démolir une montagne avec un bêche".
    Merci tout de même

  6. #6
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Le principe est assez simple.
    On utilise un objet FSO.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim oFS as FileSystemObject
    Ensuite, les objets à utiliser, les répertoires, les fichiers.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim oFol As Folder
    Dim oFil As File
    Ensuite, on travaille avec ces différents objets.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Set oFS = New FileSystemObject
    Set oFol = oFS.GetFolder("LeCheminDeMonRépertoire")
     
    For Each oFil In oFol.Files
    'L'action sur les fichiers
    Next oFol
    Te voilà avec une base de départ.

  7. #7
    Nouveau Candidat au Club
    Profil pro
    membre association
    Inscrit en
    Octobre 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations professionnelles :
    Activité : membre association
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2012
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Oh, merci beaucoup Heureux-oli. Tu viens de me donner un merveilleux coup de main. Ce sont toujours les débuts qui sont les plus difficiles. Je vais m'y mettre le plus tôt possible et je t'avise de l'avancement de mon travail. merci beaucoup.

  8. #8
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Reviens dans cette discussion chauqe fois que tu rencontre une difficulté.

Discussions similaires

  1. Copier une base de sauvegarde par copier-coller
    Par piflechien73 dans le forum Réplications
    Réponses: 3
    Dernier message: 18/09/2011, 19h25
  2. [ODBC] Site avec base de données : par ou commencer ?
    Par Liane dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 29/03/2006, 14h56
  3. lier deux base de données par un même table
    Par id dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 06/02/2006, 14h28
  4. [DEBUTANT] Base de données par défaut
    Par karamazov994 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 23/11/2005, 16h29
  5. création d'une base de donnée par programme
    Par lassad dans le forum Bases de données
    Réponses: 9
    Dernier message: 18/10/2005, 16h36

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