lol ja det er svært at tage det ellers seriøse spørgsmål seriøst når det kommer fra ywltk
Hint: du skal bruge en do until loop og xlLastCell så meget vil jeg røbe, men det er for tæt på påskefri til at jeg gider at skrive den kode nu. Hvis ingen har hjulpet dig efter påske skal jeg nok lige smide noget sammen.
Alternativt farver denne kun celler med indhold. Udskriver til vis udskrift, hvis det skal være til printer bruges linien ActiveSheet.PrintOut i stedet
Sub Farvogprint()
UsedRange.Interior.ColorIndex = 0 For Each RW In Range("a1", Range("a65536").End(xlUp)) If RW.Row <> 1 Then Range("a" & RW.Row - 1, Range("iv" & RW.Row - 1).End(xlToLeft)).Interior.ColorIndex = 0 End If If RW.Value <> "" Then Range("a" & RW.Row, Range("iv" & RW.Row).End(xlToLeft)).Interior.ColorIndex = 6 'ActiveSheet.PrintOut 'udskriver til printer ActiveSheet.PrintPreview 'udskriver til vindue End If Next UsedRange.Interior.ColorIndex = 0 End Sub
Endnu et alternativ. Denne udskriver kun den aktuelle linie og skjuler alle andre.
Sub Farvogprint1()
UsedRange.Interior.ColorIndex = 0 For Each RW In Range("a1", Range("a65536").End(xlUp)) UsedRange.EntireRow.Hidden = True 'skjuler alle rækker If RW.Row <> 1 Then Range("a" & RW.Row - 1, Range("iv" & RW.Row - 1).End(xlToLeft)).Interior.ColorIndex = 0 End If If RW.Value <> "" Then RW.EntireRow.Hidden = False 'hvis kun aktuel række skal udskrives Range("a" & RW.Row, Range("iv" & RW.Row).End(xlToLeft)).Interior.ColorIndex = 6 'ActiveSheet.PrintOut 'udskriver til printer ActiveSheet.PrintPreview 'udskriver til vindue End If Next UsedRange.Interior.ColorIndex = 0 UsedRange.EntireRow.Hidden = False End Sub
Du får lige den nyeste version også, du kan udvide antal kolonner som farves ved at ændre "c" til den kolonne du ønsker i linierne med '** Udskift PrintOut med PrintPreview hvis det skal være på papir
Sub Marker()
Dim rk Range(Range("a1").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.PrintPreview ' PrintOut Range("a" & rk.Row, Range("c" & rk.Row)).Interior.ColorIndex = xlNone '** End If Next
Jeg har nu implementeret makroen ind i mit regneark! Da regnearket er opdelt i flere ens ark (12 stk)! Indtil videre bliver jeg nød til at lave en makro for hver ark! hvordan laver en makro der udskriver alle 12 ark?? (NB! det er første gang jeg arbejder med VB)
For Each sh In ActiveWorkbook.Worksheets sh.Activate
Range(Range("a1").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.PrintPreview ' PrintOut Range("a" & rk.Row, Range("c" & rk.Row)).Interior.ColorIndex = xlNone '** End If Next
Hmm! Jeg havde lavet en fejl beklager ulejligheden! Det fungerer perfekt nu!
Nå ja jeg har dog fået ondt i armene da jeg ikke kan få dem ned af ren begejstring! :-) Tak for hjælpen!
Synes godt om
Ny brugerNybegynder
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.