Condividi:        

Metodo Activeprinter dell'oggetto _Application non riuscito

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Metodo Activeprinter dell'oggetto _Application non riuscito

Postdi oz85 » 30/05/18 11:44

Ciao a tutti!

Ho una macro che stampa in rete, molto molto semplice. La macro seleziona una stampante e manda la stampa su di essa.

Funziona tutto benone tranne il fatto che sono incappato in un problema che non riesco a capire bene.

La macro è associata ad un tasto il quale se lo seleziono io, dal mio pc quindi, manda il tutto in stampa, mentre se effettuato da altro pc restituisce l'errore: "Metodo Activeprinter dell'oggetto _Application non riuscito"

Non capisco davvero quale possa essere il problema. Il secondo utente quando manda in stampa senza l'utilizzo di macro, riesce a fare tutto, solo quando clicca sul tasto che avvia la macro non riesce. Cosa sto sbagliando???

' Stampa FOGLIO CP
Range("Tabella18[[#Headers],[STATO]]").Select
Application.ActivePrinter = "\\csservice\it21-sist su Ne07:"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
"\\csservice\it21-sist su Ne07:", Collate:=True, IgnorePrintAreas:=False
oz85
Utente Junior
 
Post: 92
Iscritto il: 26/03/18 14:35

Sponsor
 

Re: Metodo Activeprinter dell'oggetto _Application non riusc

Postdi Anthony47 » 30/05/18 13:37

I due Pc hanno hardware uguale? Accedono alla stampante tramite la stessa interfaccia di rete? Hanno ambedue windows e office in Italiano?

Comunque dovresti poter vedere come si chiama, "su quel Pc", quella stampante usando questa macro:
Codice: Seleziona tutto
Sub PrintrName()
'scegli printer
SelPrint = Application.Dialogs(xlDialogPrinterSetup).Show
If SelPrint = False Then
    MsgBox "Stampa Cancellata"
    Exit Sub
End If
Debug.Print Application.ActivePrinter
End Sub
Avvia la Sub PrintrName e scegli, tramite il DialogBox che compare, la stampante di cui parli.

Alla fine potrai visualizzare il nome con cui quel Pc conosce quella stampante nella "finestra Immediata"; per aprire la finestra Immediata, dal vba, premi Contr-g

Ovviamente potresti anche lasciare il codice che ti ho dato e far scegliere all'utente la stampante target.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19215
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Metodo Activeprinter dell'oggetto _Application non riusc

Postdi oz85 » 30/05/18 14:33

Grazie per l'aiuto Anthony.

Preferisco non far scegliere la stampante perchè è sempre quella e ci sono una serie di stampe da fare dallo stesso file e per velocizzare l'operazione, preferisco non far scegliere la stampante.

Utilizzando la tua macro creata, viene fuori che la stessa stampante collegata in rete ha questi nomi:

per me: \\csservice\it21-sist
per il mio collega: \\CSSERVICE\it21-sist

Da qui, ho provato a modificare la macro ma viene fuori l'errore che riporto sotto la macro.


Sub Rettangoloarrotondato2_Click()

' Stampa FOGLIO CP
Range("Tabella18[[#Headers],[STATO]]").Select
Application.ActivePrinter = "\\csservice\it21-sist"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
"\\csservice\it21-sist", Collate:=True, IgnorePrintAreas:=False

End Sub

ERRORE:
Metodo 'ActivePrinter' dell'oggetto '_Application' non riuscito
oz85
Utente Junior
 
Post: 92
Iscritto il: 26/03/18 14:35

Re: Metodo Activeprinter dell'oggetto _Application non riusc

Postdi oz85 » 30/05/18 14:58

Forse ho risolto modificando la tua macro che è una soluzione che non mi dispiace.

In pratica selezione la stampante e faccio fare le stampe presenti su più fogli.

Pensavo inizialmente che bisognava per ogni stampa selezionare il target stampante, invece una volta stampata va tutto liscio.

Ancora una volta grazie mille!

Anthony47 ha scritto:I due Pc hanno hardware uguale? Accedono alla stampante tramite la stessa interfaccia di rete? Hanno ambedue windows e office in Italiano?

Comunque dovresti poter vedere come si chiama, "su quel Pc", quella stampante usando questa macro:
Codice: Seleziona tutto
Sub PrintrName()
'scegli printer
SelPrint = Application.Dialogs(xlDialogPrinterSetup).Show
If SelPrint = False Then
    MsgBox "Stampa Cancellata"
    Exit Sub
End If
Debug.Print Application.ActivePrinter
End Sub
Avvia la Sub PrintrName e scegli, tramite il DialogBox che compare, la stampante di cui parli.

Alla fine potrai visualizzare il nome con cui quel Pc conosce quella stampante nella "finestra Immediata"; per aprire la finestra Immediata, dal vba, premi Contr-g

Ovviamente potresti anche lasciare il codice che ti ho dato e far scegliere all'utente la stampante target.

Ciao
oz85
Utente Junior
 
Post: 92
Iscritto il: 26/03/18 14:35


Torna a Applicazioni Office Windows


Topic correlati a "Metodo Activeprinter dell'oggetto _Application non riuscito":


Chi c’è in linea

Visitano il forum: Nessuno e 24 ospiti