Avatar billede ywltk Nybegynder
24. april 2006 - 09:46 Der er 10 kommentarer og
1 løsning

Udskriv flere sider

jeg anvender denne macro til udskrift i EXCEL:
Sub Marker()

Dim rk
Range(Range("a3").End(xlDown), Range("a1000 ").End(xlUp)).Select
For Each rk In Selection
If rk <> "" Then
Range("a" & rk.Row, Range("h" & rk.Row)).Interior.ColorIndex = 6 '**
ActiveSheet.PrintPreview
Range("a" & rk.Row, Range("h" & rk.Row)).Interior.ColorIndex = xlNone '**
End If
Next

End Sub
Macro makere linie 1 og udskriver siden, derefter linie 2 og udskriver. osv.

Mit problem er nu at listen er over 1 side. Men macroen skriver kun side et ud og forsætter med at skrive side 1 ud indtil bunden af listen er nået på side >1!
Hvordan løses dette problem?
Avatar billede mrjh Novice
24. april 2006 - 11:16 #1
Et bud:
Hvis det er i bredden du mener, skal du udvide kolonnen i dit range("h").
Avatar billede ywltk Nybegynder
24. april 2006 - 11:19 #2
Nej det er det desværre ikke! Det er længden derfor har jeg sat den til a1000!

Jeg kunne forestille mig en løsning hvor en tæller angav et område ved de første 50 sider og et andet ved liner over 50!
Avatar billede excelent Ekspert
24. april 2006 - 15:28 #3
denne udvidelse virker hos mig

Sub Marker()

Dim rk

Range("a1:a56").Select
For Each rk In Selection
If rk <> "" Then
Range("a" & rk.Row, Range("c" & rk.Row)).Interior.ColorIndex = 6
ActiveSheet.PrintOut 'PrintPreview ' PrintOut
Range("a" & rk.Row, Range("c" & rk.Row)).Interior.ColorIndex = xlNone
End If
Next

Range(Range("a57").End(xlDown), Range("a65536").End(xlUp)).Select
For Each rk In Selection
If rk <> "" Then
Range("a" & rk.Row, Range("c" & rk.Row)).Interior.ColorIndex = 6
ActiveSheet.PrintOut 'PrintPreview ' PrintOut
Range("a" & rk.Row, Range("c" & rk.Row)).Interior.ColorIndex = xlNone
End If
Next

End Sub
Avatar billede excelent Ekspert
24. april 2006 - 16:36 #4
denne er vist bedre:

Sub Marker()

Dim rk

Range("a1:a56").Select
For Each rk In Selection
If rk <> "" Then
Range("a" & rk.Row, Range("c" & rk.Row)).Interior.ColorIndex = 6
ActiveSheet.PrintPreview ' PrintOut
Range("a" & rk.Row, Range("c" & rk.Row)).Interior.ColorIndex = xlNone
End If
Next

'Range(Range("a57").End(xlDown), Range("a65536").End(xlUp)).Select
Range("a57:a112").Select
For Each rk In Selection
If rk <> "" Then
Range("a" & rk.Row, Range("c" & rk.Row)).Interior.ColorIndex = 6
ActiveSheet.PrintPreview ' PrintOut
Range("a" & rk.Row, Range("c" & rk.Row)).Interior.ColorIndex = xlNone
End If
Next

End Sub
Avatar billede excelent Ekspert
24. april 2006 - 16:38 #5
ret evt a57 og a112 ind til dine sideskift
Avatar billede ywltk Nybegynder
24. april 2006 - 21:34 #6
Hmm! Jeg får skrevet alle sider ud på engang! Jeg ønsker kun at skrive den side ud hvor der er en markering!
Jeg har løst den med inspiration fra Excelent's løsning:

Sub Marker()

Dim rk

Range("a1:a10").Select
For Each rk In Selection
If rk <> "" Then
Range("a" & rk.Row, Range("c" & rk.Row)).Interior.ColorIndex = 6
Worksheets("Ark1").PageSetup.PrintArea = "$A$1:$C$10"
ActiveSheet.PrintPreview ' PrintOut
Range("a" & rk.Row, Range("c" & rk.Row)).Interior.ColorIndex = xlNone
End If
Next

Range("a11:a14").Select
Worksheets("Ark1").PageSetup.PrintArea = "$A$11:$C$25"
For Each rk In Selection
If rk <> "" Then
Range("a" & rk.Row, Range("c" & rk.Row)).Interior.ColorIndex = 6
ActiveSheet.PrintPreview ' PrintOut
Range("a" & rk.Row, Range("c" & rk.Row)).Interior.ColorIndex = xlNone
End If
Next

End Sub
Avatar billede excelent Ekspert
24. april 2006 - 21:52 #7
troede problemet var at side 2 ikke blev udskrevet!
Avatar billede ywltk Nybegynder
24. april 2006 - 21:55 #8
Det er muligvis også mig der ikke har beskrevet problemet godt nok! Men dit forslag gave mig mulighed for selv finde frem til en løsning.
Avatar billede ywltk Nybegynder
24. april 2006 - 21:55 #9
hmm
Avatar billede ywltk Nybegynder
24. april 2006 - 21:59 #10
Hmmm hvordan er det jeg giver point!??
Avatar billede excelent Ekspert
24. april 2006 - 22:01 #11
jeg kan lægge et svar, så kan du klikke på navnet og acceptere
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
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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