Avatar billede jobless Nybegynder
20. december 2002 - 17:15 Der er 5 kommentarer og
1 løsning

2 x 24 sider i word.....???

Hej.

Jeg har (efter at have brevflettet et 24 siders brev til 2 modtagere) et dokument på 2 x 24 sider.
Nederst i word (til venstre) skriver den 'page 1'......'page 24', og ved næste side 'page 1'......'page 24'. Lidt til højre derfor står der f.eks '24/48'.
Jeg vil gerne have udskrevet de første 24 sider af de 48, men hvis jeg vælger at udskrive side 1-24 får jeg alle 48 sider udskrevet. Hvis det er muligt vil jeg gerne have det udskrevet vha VB, da jeg har en makro til at udskrive med.

MVH

JoBless
20. december 2002 - 17:45 #1
Når du brevfletter nummereres de 24 sider til den første modtager med nummer 1-24, og til den næste modtager også med nummer 1-24, med andre ord ingen af dine sider har et højere sidetal end 24, og derfor udskrives alle sider.
Når det kun er modtagere det drejer sig om, vil jeg foreslå at du fletter til den første - udskriver, fletter til den - udskriver.
20. december 2002 - 17:49 #2
= 2 modtagere det drejer sig om
Avatar billede Slettet bruger
20. december 2002 - 21:31 #3
Vælg den record du skal udskrive via Fletmenuen og tryk på udskriv til printer, her få du mulighed for kun at udskrive til den valgte record.

Du kan bruge nedennævte kode, men igen skal det være den aktuelle record.

With ActiveDocument.MailMerge
        .Destination = wdSendToPrinter
        .SuppressBlankLines = True
        With .DataSource
            .FirstRecord = ActiveDocument.MailMerge.DataSource.ActiveRecord
            .LastRecord = ActiveDocument.MailMerge.DataSource.ActiveRecord
        End With
        .Execute Pause:=False
    End With
End Sub
Avatar billede jobless Nybegynder
21. december 2002 - 10:13 #4
Der kan være tale om op til ca. 400 modtagere, så......

hov-sa: kan man ikke lave en løkke i din kode, så den sender alle records afsted som printjobs?
Avatar billede jobless Nybegynder
21. december 2002 - 10:47 #5
Nu har jeg ændret koden til:

ActiveDocument.MailMerge.DataSource.ActiveRecord = wdFirstDataSourceRecord

For a = 1 To ActiveDocument.MailMerge.DataSource.RecordCount

    With ActiveDocument.MailMerge
        .Destination = wdSendToPrinter
        .SuppressBlankLines = True
        With .DataSource
            .FirstRecord = ActiveDocument.MailMerge.DataSource.ActiveRecord
            .LastRecord = ActiveDocument.MailMerge.DataSource.ActiveRecord
        End With
        .Execute Pause:=False
        .DataSource.ActiveRecord = wdNextDataSourceRecord
    End With

Next a


Burde dette ikke virke ok (det virker i en lille test, men jeg mener sådan overordnet funktionelt)?

MVH

JoBless
Avatar billede Slettet bruger
21. december 2002 - 21:23 #6
Jeg troede du skulle have skrevet enkelte records ud, og der skal du vide hvilke, men hvis du skal udskrive alle record i et fletdocument, viser en indspillet makroen dette:

With ActiveDocument.MailMerge
        .Destination = wdSendToPrinter
        .SuppressBlankLines = True
        With .DataSource
            .FirstRecord = wdDefaultFirstRecord
            .LastRecord = wdDefaultLastRecord
        End With
        .Execute Pause:=False
    End With
End Sub
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Tag et kursus i Word og øg effektiviteten

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester