Excel kan inte importera Word-tabeller så lätt som det kan andra uppgifter . Ett sätt att få Word-tabeller i Excel är att först konvertera data i Word-tabeller till kommaseparerade värden , mer känd som CSV . Men detta är en tidskrävande uppgift . En annan lösning är att använda Excel programmeringsspråk , Visual Basic for Applications , för att läsa ett Word tabellens data och kopiera den till ett Excel-kalkylblad . Med hjälp av denna metod innebär att man använder de virtuella föremålen i Word , inklusive " Table " objektet . Instruktioner
1
Använd Utforskaren för att kopiera en Word- fil som innehåller minst en tabell till mappen " C : . \\ " Byt namn på filen som " table.docx . " Du ska skriva ett introduktionsprogram som kommer att läsa en tabellcell från denna fil .
2
Klicka på " Utvecklare " fliken, klicka sedan på " Visual Basic " knappen för att öppna Visual Basic-programmering miljö . Klistra in följande program i VB-kod fönster . Detta program skapar en länk till Word , vilket gör excel att använda Word virtuella objekt precis som om programmet kördes i ett Word- dokument . Denna process kallas " Automation . "
Dim pgmWord Som Word.Application
Set pgmWord = CreateObject ( " Word.Application " )
Public Sub LoadWordTablebak ( ) >
pgmWord.Documents.Open . ( " c : \\ table.docx " ) katalog
MsgBox pgmWord.ActiveDocument.Tables ( 1 ) Cell ( 1 , 1 ) katalog
pgmWord.ActiveDocument . Stäng
pgmWord.Quit
End Sub
3
Klicka på menyn "Verktyg" , klicka sedan på " Referenser " kommandot . Bläddra igenom fönstret som visas för att lokalisera " Microsoft Word " objektet , klicka på kryssrutan för det objektet . Denna åtgärd gör att Excel tillgång till visuella objekt i ett Word- dokument .
4
Klicka något uttalande i programmet , klicka sedan på " Kör " -menyn är " Kör " -kommandot . Programmet kommer att visa ett meddelande rutan visar innehållet i en tabellcell i ett Word- dokument . Du ska nu utöka programmet för att ladda in en komplett tabell från alla Word-dokument .
5
Klistra in följande reviderade programmet under " End Sub " uttalande av det ursprungliga programmet . Programmet uppmanar användaren att filnamnet på ett Word-dokument . Användaren måste också skriva in numret på en tabell i dokumentet . Programmet använder automatisering metoden för det första programmet att ladda kopiera den angivna tabellen cell för cell i ett Excel-ark .
Public Sub LoadWordTable2 ( ) katalog
Dim docname As String
Dim TableId As Integer
Dim c , r, startRow As Integer
Dim curCell
Dim pgmWord Som Word.Application
Set curCell = ActiveCell
Set pgmWord = CreateObject ( " Word.Application " ) katalog
docname = InputBox ( " Ange namn Word-dokument " ) katalog
docname = InputBox ( " Ange namn Word-dokument " )
( docname < > " " ) katalog
TableId = InputBox ( " Enter table number" ) katalog
pgmWord.Documents.Open ( " c : \\ table . docx " ) katalog
pgmWord.ActiveDocument.Tables ( TableId ) katalog
startRow = ActiveCell.Row
För c = 1 To. Columns.Count
för r = 1 To. Rows.Count
curCell.Value = . Cell ( r, c ) katalog
" Flytta till nästa rad
Set curCell = curCell.Offset ( 1 , 0 ) katalog
Nästa r
" Flytta till nästa kolumn
Set curCell = Cells ( startRow , curCell.Column + 1 ) katalog
Nästa c
End With
pgmWord.ActiveDocument.Close
docname = InputBox ( " Ange namn Word-dokument " ) katalog
Wend
pgmWord . Avsluta
End Sub
6
Klicka på " Excel " programikonen i aktivitetsfältet i Windows för att återgå till Excel , klicka sedan på " Makron " knappen för " Utvecklare " fliken . Dubbelklicka på " LoadWordTable " makrot att makrot .
7
Skriv namnet på ett Word-dokument som innehåller en tabell när uppmaningen att göra det visas . Skriv numret på den tabell du vill när prompten för att tabellen visas . Till exempel , om du vill ha den andra tabellen i dokumentet , typ " 2 . " Excel kommer att ladda upp tabellen i det aktuella kalkylbladet .
8
fortsätta ladda Word-tabeller med programmet som behövs . Tryck " Enter " vid " dokumentnamn " prompt att avsluta programmet .