Come estrarre le tabelle da più documenti di Word e importarli in Excel

September 8

Excel non può importare le tabelle di Word facilmente come si può altri dati. Un modo di ottenere tabelle di Word in Excel è quello di convertire prima i dati nelle tabelle di Word a valori separati da virgole, meglio conosciuto come CSV. Ma questo è un compito molto difficile. Un'altra soluzione è quella di utilizzare il linguaggio di programmazione di Excel, Visual Basic, Applications Edition, di leggere i dati di una tabella di Word e copiarlo in un foglio di calcolo Excel. Usando questo approccio comporta l'uso degli oggetti virtuali di Word, tra cui l'oggetto "Tabella".

istruzione

1 Utilizzare Esplora risorse per copiare un file di Word contenente almeno un tavolo nella cartella "C :." Rinominare il file come "table.docx." Ti scrive un programma introduttivo che leggerà una cella di tabella da questo file.

2 Fare clic sulla scheda "Sviluppatore", quindi fare clic sul pulsante "Visual Basic" per accedere all'ambiente di programmazione Visual Basic. Incollare il seguente programma nella finestra del codice di VB. Questo programma crea un collegamento a Word, Excel che consente di utilizzare gli oggetti virtuali di Word come se il programma era in esecuzione all'interno di un documento Word. Questo processo è chiamato "Automazione".

Public Sub LoadWordTablebak ()

Dim pgmWord Come Word.Application

Set pgmWord = CreateObject ( "Word.Application")

pgmWord.Documents.Open ( "c: \ table.docx")

MsgBox pgmWord.ActiveDocument.Tables (1) .Cell (1, 1)

pgmWord.ActiveDocument.Close

pgmWord.Quit

End Sub

3 Fai clic sul menu "Strumenti", quindi fare clic sul comando "Riferimenti". Scorrere la finestra che appare per individuare la voce "Microsoft Word", quindi fare clic sulla casella di controllo per tale voce. Questa azione consente di Excel accedere agli oggetti visivi in ​​un documento Word.

4 Fare clic su qualsiasi dichiarazione nel programma, quindi fare clic su comando "Esegui" del menu "Run". Il programma visualizza una finestra di messaggio che mostra il contenuto di una cella di una tabella in un documento Word. Potrai ora espandere il programma per caricare in una tabella completa da qualsiasi documento Word.

5 Incollare il seguente programma rivisto sotto la dicitura "End Sub" del programma originale. Questo programma richiede all'utente il nome del file di un documento Word. L'utente deve anche digitare il numero di una tabella all'interno del documento. Il programma utilizza il metodo di automazione del primo programma per caricare copiare la cella di tabella specificata da cellule in un foglio Excel.

Public Sub LoadWordTable2 ()

Dim docname As String

Dim TableID As Integer

c Dim, R, startRow come numero intero

Dim curCell

Dim pgmWord Come Word.Application

Set curCell = ActiveCell

Set pgmWord = CreateObject ( "Word.Application")

docname = InputBox ( "Enter Word nome del documento")

docname = InputBox ( "Enter Word nome del documento")

Mentre (docname <> "")

TableID = InputBox ( "Enter numero di tabella")

pgmWord.Documents.Open ( "c: \ table.docx")

Con pgmWord.ActiveDocument.Tables (IDtabella)

startRow = ActiveCell.Row

Per c = 1 Per .Columns.Count

Per r = 1 Per .Rows.Count

CurCell.Value = .Cell (R, C)

'Passare alla riga successiva

Set curCell = curCell.Offset (1, 0)

Avanti R

'Passa alla colonna successiva

Impostare curCell = Cells (startRow, curCell.Column + 1)

Avanti c

End With

pgmWord.ActiveDocument.Close

docname = InputBox ( "Enter Word nome del documento")

Wend

pgmWord.Quit

End Sub

6 Fare clic sull'icona dell'applicazione "Excel" nella barra delle applicazioni di Windows per tornare a Excel, fare clic sul pulsante "Macro" della scheda "Sviluppatore". Fare doppio clic sulla macro "LoadWordTable" per eseguire tale macro.

7 Digitare il nome di un documento Word contenente una tabella in cui viene visualizzata la richiesta di farlo. Digitare il numero della tabella che si desidera quando viene visualizzata la richiesta di quel tavolo. Ad esempio, se si desidera che la seconda tabella nel documento, digitare "2" Excel caricare la tabella nel foglio di calcolo corrente.

8 Continuare il caricamento di tabelle di Word con il programma in base alle esigenze. Premere il tasto "Invio" al "nome del documento" pronta per terminare il programma.