Avatar billede dennisgs Praktikant
19. marts 2015 - 13:31 Der er 1 kommentar

Udskrive aktive ark undtagen 2

Jeg har et excel ark som jeg skal bruge til nogle afstemninger til regnskab.

Jeg har et tilføjelsesprogram der allerede nu skjuler de ark, som skal skjules. Dog vil jeg gerne lave en makro der markerer alle de aktive ark pånær to og så sender dem til udskrivning.

Jeg har et makro som virker, når ingen af arkene er skjult, men vil gerne have en makro der kan tage de viste, da koden ellers går i fejl.

Nedenfor er koden som den er nu. Håber der er nogle, der kan hjælpe.

Sub PrintAfstemninger()
' * ' Initialize
      Const Sheet_Not_To_Select_01 As String = "Indtast"
      Const Sheet_Not_To_Select_02 As String = "Master"


' * ' Define variables
      Dim WS As Worksheet


' * ' Select all sheets, but the one specified
      For Each WS In Worksheets
            If WS.Name <> Sheet_Not_To_Select_01 And WS.Name <> Sheet_Not_To_Select_02 Then WS.Select      ' Make sure the sheet is not among any selected sheets already
      Next
      For Each WS In Worksheets
            If WS.Name <> Sheet_Not_To_Select_01 And WS.Name <> Sheet_Not_To_Select_02 Then WS.Select False
      Next
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
        IgnorePrintAreas:=False


ES: ' End of Sub
      Set WS = Nothing


End Sub
Avatar billede komputerdk Mester
26. marts 2015 - 00:16 #1
Er det ikke bare at vise dem i starten og så gemme dem igen?

Sub PrintAfstemninger()
' * ' Initialize
      Const Sheet_Not_To_Select_01 As String = "Indtast"
      Const Sheet_Not_To_Select_02 As String = "Master"


' * ' Define variables
      Dim WS As Worksheet

worksheets(Indtast).visible = true
worksheets(Master).visible = true


' * ' Select all sheets, but the one specified
      For Each WS In Worksheets
            If WS.Name <> Sheet_Not_To_Select_01 And WS.Name <> Sheet_Not_To_Select_02 Then WS.Select      ' Make sure the sheet is not among any selected sheets already
      Next
      For Each WS In Worksheets
            If WS.Name <> Sheet_Not_To_Select_01 And WS.Name <> Sheet_Not_To_Select_02 Then WS.Select False
      Next
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
        IgnorePrintAreas:=False


ES: ' End of Sub
      Set WS = Nothing



worksheets(Indtast).visible = false
worksheets(Master).visible = false



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

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