stampa fogli



  • stampa fogli
    di alessio giuseppe (utente non iscritto) data: 15/05/2016 20:32:54

    Ciao,
    con la macro,riportata sotto, stampo dal foglio 1 al 1000, digitando con una virgola i fogli da stampare.
    Ho un'altra cartella che ha la numerazione dal foglio 10001 al 2000.
    Inserendo la stessa macro, mi dice logicamente che i numeri non sono compresi nell'intervallo.
    Dovrei digitare al posto di 1500, 500, per stamapre il foglio 1500.
    Non è possibile sistemare la macro in modo da digitare il numero effettivo del foglio , e non quello del foglio meno 1000 ?
    Saluti
    alessio giuseppe
     
     Macro1 Macro
    '
    
    '
    fogli = Split(InputBox("Fogli da stampare (numeri separati da virgole"), ",")
    For n = 0 To UBound(fogli)
      Sheets(Val(fogli(n))).PrintOut
    Next
    
    End Sub
    



  • di patel data: 16/05/2016 07:47:57

    se tu indichi il nome del foglio invece del numero la macro diventa
     
    sub stampa()
    fogli = Split(InputBox("Nomi Fogli da stampare (nomi separati da virgole"), ",")
    For n = 0 To UBound(fogli)
      Sheets((fogli(n)).PrintOut
    Next
    End Sub





  • stampa fogli
    di alessio giuseppe (utente non iscritto) data: 16/05/2016 08:55:17

    ho inserito la tua macro, ma non funziona ; mi dà "errore di compilazione"su "( fogli(n))".
    Anche sostituendo la "n", con "nome", la macro non funzioma.
    Spero che la soluzione non sia di rinominare tutti i fogli da (1001 a 2000) con dei nomi.
    Ringrazio per la sollecita risposta e saluto
    Alessio Giuseppe



  • di patel data: 16/05/2016 10:11:33

    c'è una parentesi in più, la riga corretta è
    Sheets(fogli(n)).PrintOut
    se non riesci allega un file di esempio con 5 fogli per testare la macro