Avatar billede dane022 Seniormester
22. september 2005 - 22:30 Der er 13 kommentarer og
1 løsning

udskriv automatisk ekstra ark

Jeg har et problem der sikkert er herre nemt, men jeg kan ikke lige greje løsningen og det ser ikke ud til at andre har haft behovet, da jeg ikke kunne finde nogle spørgsmål om dette.

Jeg har 2 ark i mit regneark.

Når man udskriver ark1, så skal ark2 også udskrives.

Når man udskriver ark 2 er det kun ark2 der skal udskrives.
Avatar billede sjap Praktikant
22. september 2005 - 23:42 #1
Der findes en Workbook_BeforePrint i ThisWorkBook, men den kan jeg ikke lige få til at fungere. Mit gæt ville være noget i retning af

Private Sub Workbook_BeforePrint(Cancel As Boolean)

If ActiveSheet.Name = "Ark1" Then
    Sheets("Ark2").PrintOut Copies:=1, Collate:=True
End If

End Sub

Men jeg kan ikke få hændelsen aktiveret (den ignores når jeg printer), men måske kan du bruge det som inspiration.


Alternativt kan du jo knytte en makro til en kommandoknap på ark 1

Private Sub CommandButton1_Click()

    Sheets("Ark1").PrintOut Copies:=1, Collate:=True
    Sheets("Ark2").PrintOut Copies:=1, Collate:=True

End Sub

Du kan gøre det samme på ark 2 (selvom du jo der kan bruge den almindelige funktion.

Private Sub CommandButton1_Click()

    Sheets("Ark2").PrintOut Copies:=1, Collate:=True

End Sub
Avatar billede kabbak Professor
22. september 2005 - 23:42 #2
sæt denne i ThisWorkbook modulet
Ret selv arknavnene

Private Sub Workbook_BeforePrint(Cancel As Boolean)
Caller = ActiveSheet.Name ' det ark hvor udskriften bestilles fra
If Caller = "Ark1" Then
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
    Sheets("Ark2").PrintOut Copies:=1, Collate:=True'det ark der også skal udskrives

End If
End Sub
Avatar billede sjap Praktikant
22. september 2005 - 23:56 #3
kabbak > Er Caller-funktionen nødvendig? Kan man ikke blot undersøge navnet direkte (som i mit første forslag)
Avatar billede sjap Praktikant
22. september 2005 - 23:59 #4
kabbak > Skriver du i øvrigt ikke ark1 ud 2 gange?
Avatar billede kabbak Professor
23. september 2005 - 00:02 #5
Det var nu ikke ment som en funktion, men som navnet på en variabel.

Kom senere til at tænke på at ordet måske var reseveret.
Fordi jeg bruger, at smide navnet over i en variabel, så er det nemmere at tjekke værdien ved testkørsel.
Avatar billede kabbak Professor
23. september 2005 - 00:04 #6
jeg testede på min printer, der fik jeg den kun 1 gang , men jeg kørte også kun en test.
Avatar billede sjap Praktikant
23. september 2005 - 00:08 #7
Misvisende brug af ordet funktion. Det kan jeg godt se nu. Beklager! :0)

Jeg tænkte bare at BeforePrint bliver jo aktiveret, når du printer et ark. Printningen bliver vel ikke standset - den afventer blot at koden i BeforePrint afvikles. Og her vælger du så - som jeg ser det - at skrive arket ud igen med

    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

Eller er der noget jeg har overset?
Avatar billede kabbak Professor
23. september 2005 - 00:10 #8
har lige testet igen, du har ret, koden skal se sådan ud'

Private Sub Workbook_BeforePrint(Cancel As Boolean)
Caller = ActiveSheet.Name ' det ark hvor udskriften bestilles fra
If Caller = "Ark1" Then
        Sheets("Ark2").PrintOut Copies:=1, Collate:=True'det ark der også skal udskrives

End If
End Sub
Avatar billede sjap Praktikant
23. september 2005 - 00:14 #9
Se det kan jeg jo bedre lide - det ligner nemlig mit første forslag ret meget. Men nu skeler øjnene efterhånden så meget, at jeg hellere må kravle i seng. Hyg dig ;0)
Avatar billede kabbak Professor
23. september 2005 - 00:20 #10
ja godnat
Avatar billede dane022 Seniormester
23. september 2005 - 16:57 #11
Jeg har brugt kabbaks løsning, men måske er det mere fair hvis i deler point ?
Avatar billede kabbak Professor
23. september 2005 - 17:56 #12
giv dem til sjap, han var først med en brugbar løsning ;-))
Avatar billede sjap Praktikant
23. september 2005 - 18:49 #13
Jeg modtager da gerne lidt point - og jeg deler også gerne :0)

kabbak > Jeg har stadig ikke helt fanget ideen med at oprette en variabel og lægge arknavnet over i variablen. Det virker lidt overflødigt, men det er måske bare mig?
Avatar billede kabbak Professor
23. september 2005 - 19:19 #14
det er overflødig, men jeg bruger det tit, for så kan man læse værdien, når man tester.
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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

Seneste spørgsmål Seneste aktivitet
I går 21:00 Libre Office Impress Af Frank i Andre styresystemer
I går 11:47 VB script Af Jenshentze i Word
I går 11:21 Popup ved opstart Af mort1 i Windows
04/0918:50 Slet lokal konto Af ErikHg i Windows
04/0916:05 Ændre tal i en celle Af xvid i Excel