Condividi:        

[EXCEL 2013] Macro Stampa-Salva-Incrementa

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

[EXCEL 2013] Macro Stampa-Salva-Incrementa

Postdi Demolitore » 15/01/16 16:04

Salve ragazzi,

Mi dispiace disturbarvi ma non so dove battere la testa...
Ho fatto parecchie prove ma non ne vengo a capo...

Ho fatto un collage di vari codici che ho trovato nel web per creare una macro che mi dia la possibilità cliccando sul pulsante stampa di :

- Stampare il file;
- Salvare il file con il nome di 3 celle in una cartella predefinita;
- Incrementare una cella del nome di +1;
- Salvare il file di origine con l'incremento;

Codice: Seleziona tutto

Private Sub Workbook_BeforePrint(Cancel As Boolean)

Application.DisplayAlerts = False
ActiveWorkbook.Save
Application.DisplayAlerts = True
 
Dim sh As Worksheet
Const cPathSalvataggio As String = "C:\Users\Utente S.Margherita\Desktop\"
 
Application.DisplayAlerts = False
       
With Me
                 
Set sh = .Worksheets("Foglio1")
.SaveAs cPathSalvataggio & sh.Range("ZZ2999") & sh.Range("D6") & sh.Range("E6"), 56 '51 '51
               
End With
           
Application.DisplayAlerts = True
 
Set sh = Nothing
   
valore = Range("ZZ3000").Value
Range("ZZ3000").Value = valore + 1
   
ChDir "C:\Users\Utente S.Margherita\Desktop"
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:= _
"C:\Users\Utente S.Margherita\Desktop\Modulo Ingresso Officine.xlsm", _
FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
Application.DisplayAlerts = True
                 
End Sub



Dove nasce il problema.
La macro fa tutto tranne che stampare la pagina attiva nel momento in cui premo perchè stampa la pagina dopo che ha fatto l'incremento dandomi in fase di stampa sul documento L'ID sbagliato.
Però nel contempo il salvataggio con nome automatico funziona.

Come cavolo devo fare per fargli stampare il nome del file giusto?

Vi ringrazio.

PS. Se mi sono spiegato da caxxo ditemi che ci riprovo. :oops:
Avatar utente
Demolitore
Newbie
 
Post: 5
Iscritto il: 15/01/16 15:52

Sponsor
 

Re: [EXCEL 2013] Macro Stampa-Salva-Incrementa

Postdi Demolitore » 15/01/16 17:31

Avatar utente
Demolitore
Newbie
 
Post: 5
Iscritto il: 15/01/16 15:52

Re: [EXCEL 2013] Macro Stampa-Salva-Incrementa

Postdi Anthony47 » 17/01/16 02:12

Ciao Demolitore, benvenuto nel forum.
La macro fa tutto tranne che stampare la pagina attiva nel momento in cui premo perchè stampa la pagina dopo che ha fatto l'incremento dandomi in fase di stampa sul documento L'ID sbagliato
Beh, sei tu che hai inserito quella macro come "BeforePrint" ("prima della stampa").
Volendo mantenere lo stesso schema, io aggiungerei in testa queste due istruzioni:
Codice: Seleziona tutto
Private Sub Workbook_BeforePrint(Cancel As Boolean)
ActiveSheet.PrintOut         'AGGIUNGI
Cancel = True                'AGGIUNGI
'Continua il codice


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

Re: [EXCEL 2013] Macro Stampa-Salva-Incrementa

Postdi Demolitore » 18/01/16 08:08

Ho provato Anthony47.

Ma non funziona... perchè ora non stampa più ed inoltre incrementa di 2...

Ma volendo anche cambiare schema come faresti?

Cioè la mia idea di base era la seguente, premendo il pulsante stampa doveva succedere che:

1) Stampava il fogli appena compilato
2) Crea una copia del file dek foglio appena stampato in una cartella predefinita con un nome che varia in base alle celle (Salva con nome)
3) Cambiava l'ID del foglio attivo incrementando di 1 (non la copia)
4) Salvava il foglio attivo automaticamente.

Ma posso inserire la macro come "AfterPrint"
Avatar utente
Demolitore
Newbie
 
Post: 5
Iscritto il: 15/01/16 15:52

Re: [EXCEL 2013] Macro Stampa-Salva-Incrementa

Postdi Anthony47 » 18/01/16 12:58

Eh si, la macro "si attorciglia su se stessa"...
Prova modificando la parte iniziale in
Codice: Seleziona tutto
Private Sub Workbook_BeforePrint(Cancel As Boolean)
Application.EnableEvents = False    'AGGIUNGI
ActiveSheet.PrintOut                'AGGIUNGI
Application.EnableEvents = True     'AGGIUNGI
Cancel = True
'etc etc

In pratica si tratta di aggiungere le ulteriori due righe con Application.EnableEvents

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

Re: [EXCEL 2013] Macro Stampa-Salva-Incrementa

Postdi Demolitore » 18/01/16 13:45

:) Grazie mille va alla grande ora!!!!

grazie mille ANTHONY47 non sarei mai riuscito a sistemare sta macro senza i tuoi consigli !!!!!
Avatar utente
Demolitore
Newbie
 
Post: 5
Iscritto il: 15/01/16 15:52


Torna a Applicazioni Office Windows


Topic correlati a "[EXCEL 2013] Macro Stampa-Salva-Incrementa":


Chi c’è in linea

Visitano il forum: Nessuno e 32 ospiti