|
| Kommentar Fra : Eyvind |
Dato : 30-10-10 14:52 |
|
Jeg har lige indspillet en makro med "båndoptageren" hvor jeg gjorde følgende:
start
vælge Ctrl + z
markere række 1
marker skift og række 30
filer > print
vælge det markerede
ok
afslut.
Sub printmakro()
'
' printmakro Makro
' Makro indspillet 30-10-2010 af Eyvind
'
' Genvejstast:Ctrl+z
'
Rows("1:30").Select
Selection.PrintOut Copies:=1, Collate:=True
End Sub
Men det er nok ikke bare det du vil.
| |
| Kommentar Fra : Peder99 |
Dato : 30-10-10 22:08 |
|
Hej
Prøv manuelt at erstatte Rows("11:11").Select
med
ActiveSheet.Rows(Selection.Row).Select.
Dette skulle markere hele den linie du har markeret en celle i og derefter printer du den som du plejer!
mvh
Peder
| |
| Kommentar Fra : CiviC |
Dato : 30-10-10 23:36 |
|
Hvad med denne:
Private Sub CommandButton1_Click()
Range("A500").Select
Selection.End(xlUp).Select
Slut = ActiveCell.Row
If Slut <> "" Then
For Tæl = 11 To Slut
Rows(Tæl).Select
Selection.PrintOut Copies:=1, Collate:=True
Next
Else
MsgBox ("Der er intet at printe")
End If
Range("A1").Select
End Sub
Denne vil udskrive hver linie for sig til og med sidste linie hvor der står noget i kollonne A
Mvh
CiViC
| |
|
Hej CiviC
Jeg har forsøgt at indsætte din kodning - men der køre noget, men der kommer ikke noget print.
Kodningen er indsat midt i en makro, så den ser således ud:
Sub linjeskift()
'
' linjeskift Makro
' Private Sub CommandButton1_Click()
' Range("A500").Select
' Selection.End(xlUp).Select
' Slut = ActiveCell.Row
' If Slut <> "" Then
' For Tæl = 11 To Slut
' Rows(Tæl).Select
' Selection.PrintOut Copies:=1, Collate:=True
' Next
' Else
' MsgBox ("Der er intet at printe")
' End If
' Range("A1").Select
' End Sub
'
' Makro indspillet 01-11-2010 af Leo Lund
'
' Genvejstast:Ctrl+q
'
Range("A13").Select
End Sub
Jeg kan ikke lige gennemskue hele makroen.
Hej Peder99
Din linje løser det med at tage aktuel linje - men hvordan "koder" jeg at makroen skal gå en linje ned?
Hilsen
Leo
| |
| Accepteret svar Fra : Peder99 | Modtaget 100 point Dato : 01-11-10 12:29 |
|
Hej Leo.
Når du siger gå en linie ned, skal den så bare placere markeringen der eller skal den også udskrive den næste linie?
Hvis den bare skal stille sig der og være klare til næste gang du trykker ctr + q, så skal du bare indsætte følgende:
ActiveSheet.Rows(Selection.Row).Select.
ActiveSheet.Cells(Selection.Row + 1, "A").select
Har ikke afprøvet det, men det burde virke!
mvh Peder
| |
| Kommentar Fra : Peder99 |
Dato : 01-11-10 12:33 |
|
Hej igen.
Jeg kan ikke helt finde ud af hvad din makro skal!
Skal den printe linie 1 (overskrift) sammen med linie 2, 3, 4 osv.?
Peder
| |
| Kommentar Fra : CiviC |
Dato : 01-11-10 13:47 |
|
Hej igen
Nu virkede det lige derhjemme.
Problemet ser ud til at være, at når hele rækker bliver markeret, brokker den sig over de sider der ikke indeholder noget.
Jeg har ændret lidt på den.
Du skal bare ændre "H", til den sidste kollonne du har, i linien med Range("A" & Tæl, "H" & Tæl).Select
Kode Sub Makro1()
'
' Makro1 Makro
'
Range("A500").Select
Selection.End(xlUp).Select
Slut = ActiveCell.Row
If Slut <> "" Then
For Tæl = 11 To Slut
Range("A" & Tæl, "H" & Tæl).Select
Selection.PrintOut Copies:=1, Collate:=True
Next
Else
MsgBox ("Der er intet at printe")
End If
Range("A1").Select
End Sub |
Mvh
CiViC
| |
|
Tak for svaret Peder99.
Den skal også printe overskriften - men det er klaret i indstilling af udskriften - og dertil en linje.
Det drejer sig om en specifikation fra en leverandør, hvor vores kunder indgår med en linje hver i en arkfane, og derfor skal der kun printes det som vedrører den enkelte kunde.
Din nye kodning virker perfect (når jeg fjernede punktummet til sidste i første linje)
Min makro ser nu således ud:
Sub Printlinje()
'
' Printlinje Makro
' Makro indspillet 01-11-2010 af Leo Lund
'
' Genvejstast:Ctrl+q
'
ActiveSheet.Rows(Selection.Row).Select
Selection.PrintOut Copies:=1
ActiveSheet.Cells(Selection.Row + 1, "A").Select
End Sub
Venlig hilsen
Leo Lund
www.leolund.dk
| |
| Kommentar Fra : CiviC |
Dato : 01-11-10 13:59 |
|
Her er lidt hvad der sker:
Range("A500").Select '------ > Går til cellen A500
Selection.End(xlUp).Select '------ Går op til næste celle der ikke er tom
Slut = ActiveCell.Row '------ Slut er = aktiv række
If Slut <> "" Then '------ "" Skal ændres til det sidste du har stående i A1 til A10, med anførslestegn
For Tæl = 11 To Slut
Range("A" & Tæl, "H" & Tæl).Select '------ Vælg cellerne A og Værdien "Tæl" til H og værdien "Tæl"
Selection.PrintOut Copies:=1, Collate:=True '------ Udskriv Markeringen
Next '------ Tæl = Tæl + 1
Else
MsgBox ("Der er intet at printe")
End If
Range("A1").Select
| |
|
Hej CiviC
tak for hjælpen - har stadig ikke helt forstået det, men det jeg har forstået, så ser det ud til at være lidt mere kompliceret end jeg har brug for.
Venlig hilsen
Leo Lund
| |
| Kommentar Fra : Peder99 |
Dato : 01-11-10 15:41 |
|
Hej igen.
Godt det var det du ville have!
Jeg tror måske Civic løsning forvirrer lidt pga. der skal være indsat en knap (command_button1), som du skal klikke på for at dette sker!
mvh
Peder
| |
| Du har følgende muligheder | |
|
Eftersom du ikke er logget ind i systemet, kan du ikke skrive et indlæg til dette spørgsmål.
Hvis du ikke allerede er registreret, kan du gratis blive medlem, ved at trykke på "Bliv medlem" ude i menuen.
| |
|
|