se mi passi un excel prefatto con il tuo layout provo a farti una bozza, come esempio mettici le interruzioni in manuale così son certo di aver capito bene
cya
se mi passi un excel prefatto con il tuo layout provo a farti una bozza, come esempio mettici le interruzioni in manuale così son certo di aver capito bene
cya
Ecco qua un esempio...
http://speedy.sh/gbckd/Int-pag.xls
L'interruzione deve capitare sempre subito prima di un Titolo con cella rossa, o in altre parole una nuova pagina deve iniziare sempre con una cella di tipo Titolo e non Voce.
ok, non ho molto tempo, ma a tempo perso ci do un occhio, appena ho qualcosa te lo giro..
Ps te lo faccio col VBA premi CTRL+Q e lui formatterà tutto, non dovrebbe essere complicato, cmq ti faccio sapere
Buon week end
Ok grazie.
PS: nel file in questione sono già presenti due macro su un foglio differente da quello da impaginare per la stampa, spero non si creino conflitti...
Ciao Gas,
il codice l'ho sviluppato con office 2010 vedo che mi hai allegato un xls immagino quindi che lavori con office 2003 (dovrebbe comunque essere compatibile, ma non ne sono sicuro)
il codice resetta le interruzioni di stampa e le rigenera.
il codice funziona solo nel foglio che in quel momento è attivo, se devi farlo girare su n fogli è meglio aggiungere un ciclo for..
ad ogni modo eccolo:
Fammi sapere se ti trovi e se ti basta..codice:Sub Intestazioni_Intelligenti() Dim colonna As String Cl_Colore = "A" 'Scelgo la colonna dove testare il colore x l'interruzione CL_Int = "B" 'scelgo la colonna dove impostare l'interruzione 'Reimposto le interruzioni a 0 (le elimino tutte) ActiveSheet.ResetAllPageBreaks For i = 7 To 5000 '5000 è la fine del ciclo Range(Cl_Colore & i).Select 'Seleziono la cella in cui testo il colore If Selection.Interior.Color = 255 Then 'Se il colore è rosso imposto l'intestazione Range(CL_Int & i).Select ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=ActiveCell End If Next i End Sub
Cya
Uso Office 2003 a casa, 2007 in ufficio... Pertanto utilizzo il formato xls perché all'occorrenza posso aprire il file su entrambi i computer.
Intanto grazie, appena avrò modo di testare il codice ti dirò come va.![]()