Hvordan hente ut data fra Word tabeller Bruke Excel VBA

Hvordan hente ut data fra Word tabeller Bruke Excel VBA


Visual Basic for Applications (VBA), Microsofts skriptspråk for Excel og Word, lar brukerne av disse programmene skrive skript som fremskynde vanlige oppgaver som å få tilgang til tabelldata. Foruten å gi Excel-brukere muligheten til å administrere Excel tabelldata, VBA gir også et middel for å få tilgang til tabeller i Word-dokumenter. VBA utviklere referere til denne muligheten for en Office-programmet til å kjøre en annen som "automatisering". En fordel at automat Word data utvinning gir er å spare tid. Uten automatisering, kanskje Excel-brukere må bruke mer tidkrevende metoder for å bringe data til Excel fra Word.

Bruksanvisning

1 Opprett et nytt dokument i Word ved å trykke "Ctrl-N." Klikk på "Insert" -menyen og klikk på "Table" -ikonet i "Table" panel. Klikk på en celle-ikonet for å lage en tabell og deretter skrive inn data på minst den øverste raden er nest siste cellen. Lagre dokumentet som "C: \ WordTableData.doc" og deretter tett Word. Dette trinnet oppretter eksempel data som du vil trekke med Excel.

2 Opprett et nytt dokument i Excel og trykk deretter "Alt-F11" for å gå inn i Visual Basic integrert utviklingsmiljø (IDE). IDE gir mulighet for manuelt å skrive VBA-programmer, i motsetning til å spille inn makroer i Excel.

3 Klikk "Sett inn" og deretter "Module" for å opprette en ny modul for å legge inn programkode. Skriv inn følgende kode hvor som helst i den nye modulen:

Public Sub accessTable ()

Sett appWD = Create ( "Word.Application")

appWD.Documents.Open Name: = "C: \ WordTableData.doc", _

ConfirmConversions:=False, ReadOnly:=False, AddToRecentFiles:=False,

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

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

wdOpenFormatAuto

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

MsgBox (x)

appWD.Quit

End Sub

Dette subrutine skaper en skjult forekomst av Microsoft Word, og deretter bruker den til å åpne et Word-dokument og få verdien av en celle i dokumentets første tabellen.

4 Klikk på IDE er "Referanser" element under "Verktøy" -menyen og deretter bla nedover listen over objekter til du ser "Microsoft Word Object Library». Kryss av i boksen til venstre for dette elementet og deretter lukke "Referanser dialogboksen." For å kjøre, må koden din side å linke til Word sin virtuelle objekter (for eksempel tabeller). "Referanser" dialogboksen lar deg lage denne koblingen.

5 Klikk hvor som helst inne i "accessTable" subrutine du skrev i trinn 3 og trykk "F5" for å kjøre subrutine da. Etter en kort pause, vil Excel vise en dialogboks med dataene du skrev inn i Word-dokumentet bord i trinn 1.

6 Skriv inn følgende nye koden etter "Public Sub" statement i "accessTable" subrutine:

dim someRow, someColumn

someRow = InputBox ( "Skriv raden du ønsker å trekke data fra.")

someColumn = InputBox ( "Skriv kolonnen du ønsker å trekke data fra.")

Disse nye opplysninger, og den i neste trinn, kan du velge hvilken tabellcelle for å hente ut data fra.

7 Bytt uttalelsen som begynner med "x = appWD" med denne uttalelsen:

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

8 Kjør subrutine som du gjorde i trinn 5. Svar på ledetekstene for rad og kolonne. Din reviderte programmet vil trekke ut tabelldata fra cellen du spesifiserte og vise den i en dialogboks.