come scritto nel titolo ho un problema, vista la mia inesperienza, per far stampare un foglio con la stampante virtuale PDFCreator.
Ho letto diversi topic che riportavano varie soluzioni ma non ci cavo piede.
Sono a conoscenza che excel può salvare il file in formato .pdf ma per altri motivi che non è possibile spiegare qui preferirei utilizzare la stampante virtuale citata sopra.
Questo il codice che sono riuscito a fare:
- Codice: Seleziona tutto
Sub Stampa_PDF()
'
' Stampa_PDF
'
Dim SavedPrinter
Dim Nomefile As String
Dim Cartella As String
If controllo_prima_della_chiusura(1) Then
Cancel = True
End If
Sheets("utility").Select 'attiva foglio dove prendere i dati
Nomefile = Range("AI45") 'prende nome file
Cartella = Range("AD50") 'prende nome cartella dove salvare file
Sheets("TURNI da STAMPARE").Select
SavedPrinter = ActivePrinter 'salva la stampante attuale
ActivePrinter = "PDFCreator su Ne00:" 'imposta stampante
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
'Selection.ClearContents
ActivePrinter = SavedPrinter 'ripristina la stampante attuale
End Sub
Il codice funziona bene ma per semplicità vorrei che: il nome del file e la cartella dove memorizzare il file vengano prese in automatico nelle celle indicate nelle prime variabili del codice e che naturalmente anche la stampa parta in autonomia.
Una volta eseguita l'operazione, se non ci sono stati problemi, vorrei far apparire un msgbox dove si legga la conferma della stampa.
Altra piccola modifcia da fare è:
All'inizio del codice è riportata una funzione If che se soddisfatta si può procedere alla stampa altrimenti si deve interrompere tutto fino a quando non viene soddisfatta quella condizione.
Spero di essere stato chiaro e ringrazio anticipatamente chi mi può aiutare!