Bruk av Excel som datakilde for fletteprosessen. Sammenslåing av Microsoft Word-dokumenter Tilkobling til datakilde krasjer under sammenslåing

Ofte kreves det at regnearkdata brukes i utarbeidelsen av ulike dokumenter: rapporter, brev, kontrakter, etc. I dette tilfellet er det praktisk å bruke sammenslåing av MS Excel- og MS Word-data.

Sammenslåingsprosedyren består av flere stadier.

1. stadie. Forbereder regnearkdata

Tabellen som skal slås sammen må oppfylle noen krav:

  • det skal ikke være sammenslåtte celler i tabellen. Snarere, hvis tabellen inneholder sammenslåtte celler, må du være forberedt på at sammenslåingen vil bli kansellert under eksport, og følgelig dannes det ekstra tomme rader og / eller kolonner, som kan bryte med tabellstrukturen. Generelt er sammenslåtte celler onde :)
  • alle kolonner må ha unike navn som skal brukes i sammenslåingen. Hvis den første raden med navnene på kolonnene mangler i tabellen, vil den første raden med data erstatte den, noe som betyr at den ikke vil delta i e-postlisten.

Som et eksempel, la oss ta en tabell med en liste over klienter til treningsklubben "Excellent".

Trinn 2. Forberede en Word-dokumentmal

På dette stadiet dannes et dokument i tekstredigeringsprogrammet Word, som regnearkdataene vil bli innebygd i i fremtiden. Teksten i dette dokumentet er en felles del for alle utsendelser.

Anta at alle kunder hvis klubbkort utløper neste måned er planlagt å motta varslings-e-poster.

Teksten i brevet vil være den samme bortsett fra anke, klubbkortnummer og utløpsdato. Disse dataene vil bli importert fra et Excel-regneark (uthevet i blått)


På dette stadiet skrives teksten som er felles for alle bokstaver ut i Word-dokumentet.

For mer praktisk videre arbeid ved sammenslåing, anbefales det å angi parameteren Skyggelegging av felt i posisjon Er alltid for å skille innsatte flettefelt fra vanlig tekst. Når aktivert, vises felt med grå bakgrunn. Denne bakgrunnen skrives naturligvis ikke ut.

Trinn 3. Arbeidet til MS Word Merge Wizard

Åpne brevfilen i MS Word.

Den enkleste måten å slå sammen data på er ved å følge instruksjonene i fletteveiviseren. I versjoner etter Word2003 Sammenslåingsveiviseren starterved å bruke knappenBegynn å slå sammen i fanen Nyhetsbrev

I versjoner før Word2007, bør du utføre menykommandoenService - Brev og utsendelser - Slå sammen.I tillegg for mer praktisk drift versjoner før Word2007 kan du hente frem verktøylinjen for sammenslåing

Nok en gang gjør jeg oppmerksom på at brevpapiret kun inneholder teksten som er felles for alle brev, så appellen ser ut som Respekt! og kortnummer og dato mangler.

Arbeidet til sammenslåingsveiviseren inkluderer 6 trinn.

Trinn 1: velg type dokument for utsendelse, i vårt tilfelle er det det Bokstaver

Steg 2: velg et dokument på grunnlag av hvilke utsendelser som skal opprettes, det kan være et åpent aktuelt dokument, en mal eller et eksisterende dokument. Når du velger et alternativ Prøve eller Eksisterende dokument det blir mulig å spesifisere ønsket fil i Utforsker. Vi velger Gjeldende dokument

Trinn 3: velge mottakere. I vårt tilfelle vil datakilden være en Excel-tabell, noe som betyr at vi markerer alternativet Ved hjelp av en liste... Bruk deretter knappen Oversikt... velg ønsket fil i Utforsker

Etter å ha valgt en fil, åpnes en dialogboks med den valgte tabellen. Hvis vi trenger alle postene, klikker du umiddelbart OK. Om nødvendig kan du sortere listen, filtrere de nødvendige postene eller finne dem ved å bruke de riktige kommandoene. Filtrerings- og søkemulighetene her er selvfølgelig mye dårligere enn i Excel, men du kan gjøre det enkleste valget med tekst eller numeriske verdier. I tillegg er det mulig å manuelt velge poster for distribusjon ved å bruke avmerkingsbokser :)

I vårt tilfelle må du installere et filter ved feltet Nyhetsbrev med verdien "ja" (verdien "ja" vises i tabellen hvis klubbkortet utløper i løpet av neste måned). Filteret kan settes ved å klikke på feltnavnet og velge "ja", eller ved å bruke lenken Filter i samme dialogboks


Trinn 4: legg inn de nødvendige feltene i dokumentet. Før du velger et av alternativene som tilbys av veiviseren, bør du plassere markøren i teksten der du vil sette inn dataene. Hvis du har glemt å gjøre dette, er det greit også, felt kan settes inn hvor som helst i dokumentet, og deretter flyttes. I vårt tilfelle setter vi markøren etter ordet "Respekt" foran utropstegnet. Siden vi trenger separate felt, velger vi Andre gjenstander ...

En dialogboks for valg av flettefelt åpnes.

Velge et felt Navn, trykk Sett inn, det samme for feltet mellomnavn... Lukke vinduet Sett inn flettefelt og legg til mellomrom mellom de innsatte feltene. Hvis parameteren Skyggelegging av felt satt til posisjon Er alltid, vil de innsatte feltene være godt synlige mot en grå bakgrunn. Sett markøren etter nr., klikk på lenken igjen Andre gjenstander ..., velg Klubbkortnummer - Sett inn... På samme måte setter du inn feltet Kortets utløpsdato

I tillegg til feltene ovenfor, må du sette inn slutten av klagen th (th), som avhenger av feltets verdi Gulv... For å gjøre dette vil vi bruke et spesialfelt som lar deg sette inn en av to verdier avhengig av dataene. Sett markøren rett etter ordet "Respekt", trykk på knappen regler i fanen Nyhetsbrev og velg alternativet HVIS ... SÅ ... ANNET... I versjoner før Word2007 kalles den samme knappen Legg til Word-felt og er plassert på verktøylinjen Slå sammen


Angi parameterne i den åpne dialogboksen

Etter å ha klikket OK, får vi resultatet

Trinn 5: vi ser gjennom de resulterende bokstavene ved hjelp av navigasjonsknappene. I dette trinnet kan du også endre mottakerlisten ved å filtrere eller fjerne merket i boksene. Siden vi brukte filteret tidligere, er det 3 mottakere igjen.

Ser vi nærmere på det oppnådde resultatet ser vi at det ikke helt svarer til forventningene våre.


Klubbkortnummer i stedet 001768 vises som 1768 , og datoen er slett ikke vår måte: først måneden, og så dagen, selv om alt var i orden i Excel-tabellen. De samme problemene kan oppstå ved import av celler med desimaltall, valutaformat osv. Konklusjonen er skuffende: ved sammenslåing blir ikke formateringen av tall og datoer bevart. Men det er en vei ut!

Feltene i Word-dokumentet som dataene våre settes inn i er kode som for det første kan ses, og for det andre kan endres. For å se feltkoden, for eksempel med klubbkortnummeret, bør du høyreklikke på den (RMB) og velge kommandoen Feltkoder / verdier.
Vi får følgende

(MERGEFIELD "M__klubbkort" }
Vi vil ikke endre selve koden, men vi legger til formatet. Prinsippet om å legge til et format vil være klart for alle som i det minste er litt kjent med å lage et tilpasset format i Excel. For at et tall alltid skal være seks sifre, må formatet være seks nuller:
(MERGEFIELD "M__klubbkort"\ # "000000"). Nå RMB igjen på feltet - Oppdater feltet, og vi ser nummeret i ønsket format.

Vi gjør det samme med datoen.
(MERGEFIELD "kort utløpsdato" \ @ " DD. MM. ÅÅÅÅ")


Og vi får den endelige versjonen


Du kan lese mer om Word-feltkoder i Word-hjelpesystemet eller på

Word kan trekke ut data som skal slås sammen fra en rekke kilder. En del av Microsoft Office-pakken, godtar Word enkelt data fra Outlook, Excel og Access. Andre kilder kan brukes, inkludert nettsider, OpenDocument-tekstfiler og avgrensede datafiler lagret som ren tekst. Hvis du ikke allerede har en datakilde, kan du opprette en i Word.

Viktig: Tilgang til navngitte datakilder på et HTTP-sted støttes ikke. Før du bruker filen som en datakilde for en utskriftsfletting, lagre den på din lokale harddisk.

Datakilder for sammenslåing

Nedenfor er noen av datakildene du kan bruke for utskriftsfletting i Word.

Andre databasefiler

Andre datakilder kan også brukes til sammenslåing. For å få tilgang til disse kildene, kjør veiviseren for datatilkobling.

Når du har konfigurert datakilden, kan du lage etiketter, konvolutter, brev og e-poster ved hjelp av utskriftsfletting.

tilleggsinformasjon

Har du fortsatt spørsmål om en utskriftsfletting i Word?

Hjelp oss å forbedre Word

Har du ideer for å forbedre utskriftsfletting eller andre Word-funksjoner? Del dem på siden

Nylig i en organisasjon så jeg et vilt bilde :)

Selskapet flyttet til et nytt bygg - fra Moskva-regionen til Moskva. Dette handler følgelig om å endre de vesentlige vilkårene i arbeidsavtalen for alle ansatte. I henhold til prosedyren skal ansatte varsles mot underskrift om kommende flytting, og deretter konkludere med alle tilleggsavtaler til arbeidskontrakter. Organisasjonen sysselsetter rundt 1,5 tusen mennesker, personalavdelingen må raskt utarbeide dokumenter.

Hva skjer etterpå?
Lederen for personalavdelingen sender en forespørsel til informasjonsteknologiavdelingen om å fullføre personalsystemet: du må lage trykte skjemaer - en melding og en tilleggsavtale. IT svarer at en slik revisjon vil koste så mange tusen euro, og kostnadene er ikke inkludert i budsjettet, og blant annet implementering er mulig tidligst om to måneder.

Sender forbannelser på IT-avdelingen, HR går på jobb i helgene, og lar små barn være hjemme. Udødelig arbeidsprestasjon: 3000 dokumenter ble laget på to dager! Navnet og passopplysningene til hver ansatt ble manuelt lagt til malen, og så 3000 ganger!

Vil de kunne tilgi seg selv for slik bortkastet tid når de finner ut at det å bruke Slå sammen (e-postfletting) mal i Word med en Excel-tabell som inneholder personlige data, det kan gjøres på tjue minutter :)

TRINN 1. Lag en dokumentmal i Word.

Dataene som vil endres er uthevet i rødt: etternavn, fornavn, patronym, nummer, dato for arbeidskontrakten, stilling, inndeling og avslutninger i ord respektert og mottatt avhengig av kjønn.

TRINN 2. Opprett en datakilde i Excel.

Etter at vi har satt opp sammenslåingen, vil programmet sette inn data fra kilden i malen. Hver linje er et eget dokument.

TRINN 3. Gå tilbake til dokumentmalen vi laget i Word. Vi skal jobbe med "Mailings"-fanen, studer den nøye.

Trykk på knappen "Velg mottakere", velg alternativet "Bruk en eksisterende liste" og åpne datakilden (Excel-fil med informasjon om ansatte).

I det neste vinduet velger du arket med filen som inneholder de nødvendige dataene.

TRINN 4. Plasser markøren på stedet for malteksten der du ønsker å sette inn data fra kilden, trykk på knappen "Sett inn flettefelt" og velg ønsket felt.

Slik ser malen min ut etter at alle flettefeltene er satt inn:

TRINN 5. Lag regler som endrer endelsene på ordene "respektert" og "mottatt" avhengig av kjønnet til den ansatte.

Vi setter markøren etter før slutten av ordet. Trykk på "Regler"-knappen og velg "HVIS ... SÅ ... ANNET" i rullegardinlisten.

Vi skriver ned regelen: hvis kjønnet er kvinne, så ... ellers ...

TRINN 6. Formater datoene.

Hvis du allerede har måttet bruke Mailings (Mail Merge) tidligere, har du sannsynligvis kommet over at datoer overført fra Excel ser helt feil ut i Word. For eksempel, i stedet for 19.06.2012, vil du mest sannsynlig se 19.06.2012, noe som neppe vil passe deg.

Det er forskjellige måter å løse dette problemet på, vi vil bruke den enkleste og mest praktiske.

Trykk på tastatursnarveien Alt + F9, nå kan vi se kodene til flettefeltene.

Inne i koden til Contract_Date-feltet, sett en omvendt skråstrek før den avsluttende krøllete klammeparentesen, etterfulgt av en formateringsnøkkel:
(MERGEFIELD "Contract_Date" \ @ "DD.MM.ÅÅÅÅ" }
@ - datobetegnelse, "DD.MM.ÅÅÅÅ" - datoformatnøkkel for skjemaet 19.06.2012 .
Du kan bruke et hvilket som helst annet format. For eksempel for å få datoen til å se ut 19. juni 2012, bruk nøkkelen \ @ "DD MMMM ÅÅÅÅ g.".

For å gå ut av koderedigeringsmodus, trykk Alt + F9 igjen.

TRINN 7. Trykk på knappen "Se resultater" for å sjekke hva som skjedde.

TRINN 8. Redigere listen over ansatte.

Ved å klikke på knappen "Endre mottakerliste" kan du ekskludere individuelle oppføringer fra listen, se etter duplikater, angi sortering eller filtre.

Spesiell oppmerksomhet bør vies til sortering slik at du ikke trenger å kaste bort tid på å brette dokumenter etter at de er skrevet ut. Det er mest praktisk å bruke sortering etter navn på ansatte eller etter navn på avdelinger.

TRINN 8. Fullfør sammenslåingen.

Trykk på knappen "Finn og slå sammen". Hvis du velger alternativet Skriv ut dokumenter, sendes dokumentene til skriveren umiddelbart. Hvis du trenger å se dokumentene og gjøre endringer før utskrift, velg "Endre individuelle dokumenter".

En egen Word-fil genereres med sammenslåingsresultatene.

Klar! Nyt den sparte tiden!

OPPDATERING som svar på kommentar alexey_lao :
Med en enkel makro kan du lagre hvert dokument som en egen fil.

Vi lagrer malen vår som en fil med filtypen .docm (en Word-fil med makrostøtte).

Trykk på tastekombinasjonen Alt + F8 (kall opp makrovinduet).

I vinduet som åpnes, sett inn "Navn" på makroen (for eksempel SaveFiles) og velg filen vår med malen i rullegardinlisten "Makroer fra" (jeg foretrekker å lage makroer direkte i filen slik at de fungerer selv når filen er åpen på en annen datamaskin). Klikk på "Opprett"-knappen.

På stedet der markøren blinker, skriv makrokoden:

Dim DocNum Som heltall
For DocNum = 1 til ActiveDocument.MailMerge.DataSource.Reco rdCount
ActiveDocument.MailMerge.DataSource.Acti veRecord = DocNum
Med ActiveDocument.MailMerge
.Destination = wdSendToNewDocument
.SuppressBlankLines = Sant
Med .DataSource
.FirstRecord = ActiveDocument.MailMerge.DataSource.Acti veRecord
.LastRecord = ActiveDocument.MailMerge.DataSource.Acti veRecord
Avslutt med
.Utfør pause: = Falsk
Avslutt med
Med ActiveDocument
.SaveAs FileName: = "C: // Test /" & DocNum, Filformat: = wdFormatXMLDocument
.Lukk
Avslutt med

Erstatt C: // Test / med adressen til mappen der du vil lagre dokumentene.
Lukk Visial Basic-redigeringsvinduet og gå tilbake til dokumentet vårt med malen.

Trykk Alt + F8 igjen, velg SaveFiles-makroen i listen og trykk Kjør-knappen.

Mens datamaskinen oppretter og lagrer hvert dokument etter tur, kan du ta en kopp kaffe og en informasjonskapsel. Eller gå hjem å sove hvis det er mer enn et par hundre dokumenter :)


______________

Du kan laste ned filene med eksempler her:
http://hrexcel.ru/download/excel4hr_istochnik_dannyh.xlsx
http://hrexcel.ru/download/excel4hr_shablon.docx

Eksperiment!

Nå må du opprette en datakilde for brevflettingen (adresser og etternavn til mottakerne av brevet).

1. I seksjonen Velg mottakere vindu Slå sammen i oppgaveruten, velg Oppretting av liste(fig. 8.6).

Ris. 8.6. Vindu Velg mottakere mestere Slå sammen

2. Klikk på kommandoen Skape I kapittel Oppretting av liste... Dialogboksen vist i fig. 8.7.

Sammenslåingsdatakilden er en database med poster, som hver vil bli brukt til å generere en spesifikk kopi av brevet ved å bruke hoveddokumentet. Alle poster har de samme datafeltene.

Noen av de vanligste feltene er forhåndslistet i vinduet for opprettelse av datakilde. Du kan fjerne unødvendige felt fra databasen og legge til dine egne.

Ris. 8.7. Opprette en datakilde

Andre seksjonsartikler Velg mottakere lar deg velge en eksisterende database, tidligere opprettet i Word eller i et program som Access, eller en adressebok som en datakilde.

Merk Tilstedeværelsen av ekstra felt i datakilden påvirker ikke sammenslåingsresultatet på noen måte, men det bremser programmet.

3. Klikk på knappen Tilpasning... Dialogboksen vist i fig. 8.8.

4. Marker elementet Anke.

5. Ved å klikke på knappen Slett slett det uthevede feltet.

Ris. 8.8. Sette opp datakildefelt

Ris. 8.9. Dialogvindu Slå sammen mottakere

6. Gjenta trinn 4 og 5, slett alle felt unntatt Navn, Etternavn, Organisasjon, Adresse 1 og Indeks.

7. Klikk på knappen OK.

8. Klikk på knappen Lukk dialogbokser.

9. I dialogboksen for å lagre dokumentet som åpnes, skriv inn navnet Gjester og klikk på knappen Lagre... Bildet vist i fig. 8.9 dialogboksen Slå sammen mottakere, der det for øyeblikket ikke er noen oppføringer.

10. Du må definitivt legge inn informasjon i en datakilde en gang. Klikk på knappen Endring...å gjøre det nå. Et skjema for å legge inn data åpnes. La oss legge til noen oppføringer. Senere vil sammenslåingen generere nøyaktig like mange kopier av hoveddokumentet som det er poster i datakilden.

11. Fyll ut skjemafeltene.

12. Klikk på knappen for å legge til en ny oppføring Opprett post.

13. Skriv inn noen flere poster, og overfør informasjonen presentert i tabellen. 8.1.

TABELL 8.1. Slå sammen datakilde

14. Klikk på knappen Lukk for å lagre databasen og deretter på knappen OK vindu Mottakere.

Merk For å endre datakildeinformasjonen, klikk i verktøylinjen Slå sammen på knappen Mottakere, og deretter i det åpnede dialogvinduet - på knappen Endring... Datakildeskjemaet åpnes. For å navigere gjennom kildepostene, bruk knappene Den første, Tilbake, Framover, Den siste nederst i skjemaet.

Ris. 8.10. Verktøylinje Slå sammen