sto cercando di stampare su moduli precompilati una scritta in modo da distinguere
i vari moduli in base al nome del modulo, alla data ed al numero del foglio del modulo.
la macro in uso, che prende i valori necessari da 2 inputbox, è la seguente:
- Codice: Seleziona tutto
With Worksheets("Foglio1")
.Columns("C:C").ClearContents
UREFine = .Range("C" & Rows.Count).End(xlUp).Row
I = 1
For K = UREFine To 3000 Step 3
.Cells(K, 3).Value = "Modulo" & " " & Num & "ª" _
& " " & "Del" & " " & strDATA & " " & "Foglio" & " " & "N°" & " " & I
ActiveSheet.PageSetup.Zoom = 100
ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=ActiveCell
I = I + 1
Next K
End With
End Sub
per non avere una pagina di stampa in formato A4 ho impostato la pagina ad un formato più piccolo,
tra quelli disponibili in excel, ho inserito delle interruzioni di pagina, e modificato i margini.
il risultato ottenuto è come in figura:
dovendo testare la posizione della scritta ho dovuto modificare più volte i margini ed altri valori.
Questo funziona per un modulo.
Per un modulo differente, dovendo testare nuovamente la posizione della scritta inserita,
devo modificare nuovamente i valori ed eliminare le interruzioni di pagina;
in cima alla macro ho inserito perciò questa linea di codice:
- Codice: Seleziona tutto
ActiveSheet.ResetAllPageBreaks
la quale mi rimuove solo le linee blue continue, mentre rimangono quelle tratteggiate.
per risolvere il problema devo ogni volta inserire un foglio nuovo e ripetere le stesse operazioni.
ho pensato di inserire i dati in una cella differente, ma rimane il problema di rimuovere le interruzioni di pagina.
Mi sono allora indirizzato verso word, ed anche qui riscontro dei problemi,
dover cambiare i dati manualmente per ogni foglio del modulo, oppure creare un form adeguato,
tipo inputbox, che dalle ricerche effettuate pare che sia necessario scrivere dei papiri di codice per una
cosa banale.
Quello che sto cercando di realizzare è ripristinare il foglio di lavoro ogni volta che le modifiche apportate, margini od interruzioni di pagina non soddisfano il risultato corretto, poichè una volta stabilita la posizione per un dato modulo vi rimarrebbe definitivamente, e per gli altri moduli si utilizzerebbe un altro foglio excel.
ciao e grazie