stampare su stampanti



  • stampare su + stampanti
    di alessio (utente non iscritto) data: 05/11/2016 11:51:13

    Salve a tutti,

    Sotto posto il codice che mi fa scegliere quale stampante utilizzare per la stampa del foglio attivo.
    Avrei però la necessita di poter inserire all'interno del codice direttamente la stampante da utilizzare.
    Praticamente ho un foglio exel e devo stamparlo su 3 stampanti di reti nello stesso momento (in realtà sono 2 rete + una condivisa).

    Grazie
     
    Sub Stampa() 
       Application.Dialogs(xlDialogPrinterSetup).Show 
    End Sub



  • di tanimon data: 05/11/2016 12:25:41

    ciao
    prova a "giocare" con quanto riporto sotto:
    la sub la inserisci in un modulo standard e la assegni ad un pulsante sul foglio

    Ciao
    Frank 
     
    Sub stampante()
    Dim oldStmp As String
    oldStmp = ActivePrinter
    
    'le prossime 2 righe di codice le scrivi 3 volte:
    'ogni volta cambiando la nuova stampante
    ' esempio indirizzo stampante: 10.258.7.158 
    ActivePrinter = "\"nome_server
    ome_stampante indirizzo_stampante"
    Activesheet.PrintOut
    
    'imposta la nuova stampante con le 2 righe di codice sopra riportate cambiandone il nome
    
    'fatte le 3 stampe reimposti la predefinita con
    ActivePrinter = oldStmp
    
    End Sub



  • di Alessio (utente non iscritto) data: 14/11/2016 19:00:21

    Salve,

    Ho provato come mi ha consigliato tanimon, ma mi restituisce errore (metodo active_printee dell'oggetto _global non riuscito)
    Errore 1004.

    Premetto che non è sotto server ed ho utilizzato la seguente istruzione.

    ActivePrinter = "\nome stampanteindirizzo ip stampante"

    Grazie



  • di tanimon data: 14/11/2016 22:43:53

    ciao,
    forse avevo capito male... ma la tua indicazione era:
    cit. ...Praticamente ho un foglio exel e devo stamparlo su 3 stampanti di reti nello stesso momento (in realtà sono 2 rete + una condivisa).

    per cui ho inteso che due fossero su un server
    dando per scontato che TUTTE E TRE le stampanti siano regolarmente installate
    sul pc dal quale vuoi stampare......


    Se è così,
    crea un msgbox con il quale visualizzare il nome della active printer e relativa sintassi
    poi lo commenti con un un apostrofo ad inizio riga,
    ed adegui le successive istruzioni con la stessa sintassi.

    p.s.
    per aiutarti,
    sarebbe gradito che tu inviassi copia del codice che hai utilizzato

    Ciao

    Frank


       
     
    Dim oldStmp As String
    oldStmp = ActivePrinter
    msgbox oldStmp