Hvordan kopiere data fra Excel til Word ved hjelp av VBA Excel

Innholdsfortegnelse:

Anonim

For å kopiere data fra Excel til en Word -fil ved hjelp av VBA må vi få tilgang til ordprogrammet ved hjelp av Excel VBA. I denne opplæringen lærer vi hvordan du åpner et word-program, legger til et dokument og kopierer-limer data fra Excel til det.

I denne artikkelen vil vi bruke Early Binding -metoden til å lage et objekt for ordprogrammet i stedet for å bruke senbinding. Du kan lese om det her i detalj.

Prosessen med å kopiere Excel -data til en Word -fil ved hjelp av Excel VBA

For å kopiere data fra excel til en word -fil ved hjelp av VBA, må vi først åpne Word -applikasjonen. Legg deretter til et dokument i det (hvis du vil ha et nytt dokument). Kopier data fra excel -fil. Velg avsnittet i dokumentet og lim det inn. Lagre og lukk dokumentet til slutt. Hvert av disse trinnene kan enkelt utføres fra Excel. Du trenger ikke å samhandle med Word -dokumentet.

La oss komme i gang med et eksempel uten å komme nærmere inn på teori. Fordi Iron Man sa: "Noen ganger må du løpe før du kan gå".

Eksempel: Lim inn Excel -data i Word ved hjelp av VBA

Koden nedenfor er et eksempel på hvordan du kan kopiere et utvalg av excel og lime det inn i et nytt word -dokument og lagre det på stasjonen for å bruke det senere

'VBA Code To Write to Copy data from Excel to A Document Sub ExcelToWord ()' Using Early Binding Dim wordApp As Word.Application Dim mydoc As Word.Document 'Opprette en ny forekomst av ord bare hvis det ikke er andre forekomster Angi wordApp = nytt Word.Application 'Making word App Visible wordApp.Visible = True' Opprette et nytt dokument Sett mydoc = wordApp.Documents.Add () 'kopiere innholdet fra Excel -arket ThisWorkbook.Worksheets ("ark1"). Område ("A1: g20 ") .Copy 'Lim inn på dokumentet mydoc.Paragraphs (1) .Range.PasteExcelTable _ LinkedToExcel: = False, _ WordFormatting: = False, RTF: = False' lagring av dokumentet mydoc.SaveAs2" MyDoc "'lukker dokument mydoc .Lukk 'Tømme utklippstavlen CutCopyMode = False End Sub 

Forklaring av koden:

Vel, jeg har forklart hvert trinn i selve koden ved hjelp av kommentarer, men la oss ha et ord om linjene vi har brukt i denne suben.

'Laget variabler av ordprogram og dokumenttype

Dim wordApp som Word.Application

Dim mydoc As Word.Document

Her har vi deklarert to variabler av de nødvendige typene. Vi kan gjøre dette fordi vi allerede har lagt til referansen til ordet søknad. Du kan gjøre dette ved å gå til verktøy i menyen. Finn alternativer for referanser, og se etter ordet referanse.

'Opprette en ny forekomst av ord bare hvis det ikke er andre forekomster

Angi wordApp = nytt Word.Application

'Gjør ordet app synlig

wordApp.Visible = True

'Opprette et nytt dokument

Angi mydoc = wordApp.Documents.Add ()

I den første linjen ovenfor introduserer vi wordApp -variabelen med et objekt av typen Word.App ved å bruke det nye søkeordet. Dette åpner Word -applikasjonen.

På den andre linjen gjør vi ordet søknad synlig slik at vi kan jobbe med det.

På neste linje legger vi til et nytt dokument i ordprogrammet ved hjelp av Word.Documents.Add () -funksjonen. Dette er lagret i mydoc -variabelen.

'kopiere innholdet fra excel -ark

ThisWorkbook.Worksheets ("ark1"). Område ("A1: G20"). Kopi

Her kopierer vi ganske enkelt et område fra excel. Du må ha gjort det før. Den er lagret på utklippstavlen.

'Limer på dokumentet

mydoc.Paragraphs (1) .Range.PasteExcelTable _

LinkedToExcel: = Falsk, _

WordFormatting: = Falske,

RTF: = Feil

Vi bruker PasteExcelTable -metoden i Paragraph.Range -klassen av mydoc for å lime inn data fra utklippstavlen.

'lagrer dokumentet

mydoc.SaveAs2 "MyDoc"

'lukker dokumentet

mydoc.Lukk

'Tømmer utklippstavlen

CutCopyMode = Falsk

Vi lagrer dokumentet med navnet MyDoc. Deretter lukker vi dokumentet ved hjelp av Lukk -funksjonen. Til slutt slipper vi utklippstavlen som skal brukes av andre.

Så ja gutta, slik kan du lage et nytt Word -dokument og kopiere Excel -data til det ved hjelp av VBA. Jeg har ikke gått i detaljer, da det ville gjøre artikkelen utmattende lang. Dette var bare for å lære hvordan du kan lime inn i et word -dokument gjennom Excel. Jeg håper det hjalp deg med å forstå prosessen. Hvis du har spørsmål angående denne artikkelen, kan du kontakte meg gjennom kommentarfeltet nedenfor.

Komme i gang med Excel VBA UserForms| Jeg vil forklare hvordan du lager et skjema i excel, hvordan du bruker VBA -verktøykasse, hvordan du håndterer brukerinnganger og til slutt hvordan du lagrer brukerinngangene. Vi vil gå gjennom disse emnene ved å bruke ett eksempel og en trinnvis veiledning.

VBA -variabler i Excel| VBA står for Visual Basic for Applications. Det er et programmeringsspråk fra Microsoft. Den brukes med Microsoft Office-applikasjoner som MSExcel, MS-Word og MS-Access, mens VBA-variabler er spesifikke søkeord.

Excel VBA variabelt omfang| På alle programmeringsspråk har vi variabel tilgangsspesifikatorer som definerer hvorfra en definert variabel kan nås. Excel VBA er ingen unntak. VBA har også omfangsspesifikatorer.

ByRef og ByVal -argumenter | Når et argument sendes som et ByRef -argument til en annen sub eller funksjon, sendes referansen til den faktiske variabelen. Eventuelle endringer som gjøres i kopien av variabelen, gjenspeiles i det opprinnelige argumentet.

Slett ark uten bekreftelsesforespørsler ved hjelp av VBA i Microsoft Excel | Siden du sletter ark med VBA, vet du hva du gjør. Du vil fortelle Excel om ikke å vise denne advarselen og slette det jævla arket.

Legg til og lagre ny arbeidsbok ved hjelp av VBA i Microsoft Excel 2016| I denne koden opprettet vi først en referanse til et arbeidsbokobjekt. Og så initialiserte vi det med et nytt arbeidsbokobjekt. Fordelen med denne tilnærmingen er at du enkelt kan utføre operasjoner på denne nye arbeidsboken. Som å lagre, lukke, slette osv

Vis en melding på Excel VBA -statuslinjen| Statuslinjen i excel kan brukes som en kodemonitor. Når VBA -koden din er lang og du gjør flere oppgaver med VBA, deaktiverer du ofte skjermoppdateringen slik at du ikke ser at skjermen flimrer.

Slå av advarselsmeldinger ved hjelp av VBA i Microsoft Excel 2016| Denne koden deaktiverer ikke bare VBA -varsler, men øker også tidens effektivitet av koden. La oss se hvordan.

Populære artikler:

50 Excel -snarveier for å øke produktiviteten | Bli raskere på oppgaven din. Disse 50 snarveiene får deg til å jobbe enda raskere med Excel.

VLOOKUP -funksjonen i Excel | Dette er en av de mest brukte og populære funksjonene til excel som brukes til å slå opp verdi fra forskjellige områder og ark.

COUNTIF i Excel 2016 | Tell verdier med betingelser ved hjelp av denne fantastiske funksjonen. Du trenger ikke å filtrere dataene dine for å telle spesifikke verdier. Countif -funksjonen er avgjørende for å forberede dashbordet.

Slik bruker du SUMIF -funksjon i Excel | Dette er en annen viktig funksjon på dashbordet. Dette hjelper deg med å oppsummere verdier på spesifikke forhold.