Comment faire pour extraire des données des tables de mots en utilisant VBA Excel

Visual Basic pour Applications (VBA), scripting la langue de Microsoft pour Excel et Word, permet aux utilisateurs de ces programmes écrire des scripts qui accélèrent les tâches courantes comme l'accès aux données de la table. En plus de donner les utilisateurs d'Excel la possibilité de gérer les données des tables Excel, VBA fournit également un moyen pour accéder aux tables dans les documents Word. Développeurs VBA se réfèrent à cette capacité d'un programme Office pour exécuter un autre que "automatisation." Un avantage que l'automatisation de l'extraction de données Word fournit est un gain de temps. Sans automatisation, les utilisateurs d'Excel peuvent avoir besoin d'utiliser plusieurs méthodes chronophages pour mettre les données dans Excel à partir de Word.











Instructions

  1. Créez un nouveau document dans Word en appuyant sur "Contrôle-N." Cliquez sur le "Insérer" menu, puis cliquez sur le "Table" icône dans la "Table" panneau. Cliquez sur l'icône d'une cellule pour faire une table et puis tapez des données dans au moins cellule la plus à gauche de la rangée du haut. Enregistrez le document comme "C: WordTableData.doc" puis fermez Word. Cette étape crée des exemples de données que vous allez extraire avec Excel.

  2. Créez un nouveau document dans Excel et puis appuyez sur "Alt-F11" à pénétrer dans l'environnement Visual Basic intégré de développement (IDE). L'IDE fournit les moyens pour entrer manuellement des programmes VBA, contrairement à l'intérieur de l'enregistrement de macros Excel.

  3. Cliquez "Insérer" et puis "Module" pour créer un nouveau module pour la saisie du code de programme. Tapez le code suivant n'importe où à l'intérieur du nouveau module:

    Public Sub accessTable ()

    Réglez appWD = CreateObject ("Word.Application")

    appWD.Documents.Open Nom du fichier: ="C: WordTableData.doc", _

    ConfirmerConversions: = Faux, ReadOnly: = False, AddToRecentFiles: = Faux,

    PasswordDocument: ="", PasswordTemplate: ="", Revert: = Faux, _

    WritePasswordDocument: ="", WritePasswordTemplate: =""Format: = _

    wdOpenFormatAuto

    x = appWD.ActiveDocument.Tables (1) .Rows (1) .Cells (1)

    MsgBox (x)

    appWD.Quit

    End Sub

    Cette sous-routine crée une instance cachée de Microsoft Word, puis l'utilise pour ouvrir un document Word et obtenir la valeur d'une cellule dans le premier tableau du document.

  4. Cliquez sur les IDE de "Références" élément sous le "Outils" menu, puis faites défiler la liste des objets jusqu'à ce que vous voyez "Microsoft Word bibliothèque d'objets." Placez une coche dans la case à gauche de cet article et puis fermez le "Références de dialogue boîte." Pour exécuter, votre code doit relier à des objets virtuels de Word (par exemple, tableaux). Le "Références" boîte de dialogue vous permet de créer ce lien.

  5. Cliquez n'importe où à l'intérieur du "accessTable" sous-programme que vous avez écrit à l'étape 3, puis appuyez sur "F5" pour exécuter le sous-programme. Après une courte pause, Excel affiche une boîte de dialogue avec les données saisies dans la table du document Word à l'étape 1.

  6. Tapez le nouveau code suivant après la "Public Sub" déclaration à la "accessTable" sous-programme:

    dim someRow, someColumn

    someRow = inputbox ("Saisissez la ligne que vous souhaitez extraire des données de.")

    someColumn = inputbox ("Entrez la colonne que vous souhaitez extraire des données de.")

    Ces nouvelles déclarations, et celui de la prochaine étape, vous permettent de choisir quelle table cellule pour extraire des données à partir.

  7. Remplacez l'instruction commençant par "x = appWD" avec cette déclaration:

    x = appWD.ActiveDocument.Tables (1) .Rows (someRow) .Cells (someColumn)

  8. Exécutez la sous-routine comme vous l'avez fait à l'étape 5. Répondez aux invites pour la ligne et la colonne. Votre programme révisé permettra d'extraire les données de la table de la cellule que vous avez spécifié et l'afficher dans une boîte de dialogue.

» » » » Comment faire pour extraire des données des tables de mots en utilisant VBA Excel