Multi titres
Le
Fredo(67)

Bonjour.
J'ai un document Excel composé d'environ 8000 lignes
Ce document représente le métré d'un ensemble immobilier.
Cet ensemble immobilier est composé de 8 bâtiments
le batiment A occupe à peu près les 1000 1ères lignes
le B les 1000 suivantes.. ainsi de suite
bien sûr le nombre de lignes, ainsi que la hauteur de chaque ligne
varie pour chaque bâtiment.
Ce document n'est pas figé, et il et ammené à être modifié souven=
t.
Au début du métré de chaque batiment, ne ligne spéciale indique le
titre.
Ce que voudrais c'est qu'à l'impression du document, le nom du
batiment concerné apparaisse en haut de chaque page.
j'ai essayé de définir plusieurs lignes de titre, mais cela ne
fonctionne pas car les lignes de titres doivent être adgacentes.
Vous pourriez me conseiller d'insérer avant chaque page mon titre,
mais cela coupe le dynamisme du doc, et obligerait à refaire la manip
après chaque modification.
Une idée ?
J'ai un document Excel composé d'environ 8000 lignes
Ce document représente le métré d'un ensemble immobilier.
Cet ensemble immobilier est composé de 8 bâtiments
le batiment A occupe à peu près les 1000 1ères lignes
le B les 1000 suivantes.. ainsi de suite
bien sûr le nombre de lignes, ainsi que la hauteur de chaque ligne
varie pour chaque bâtiment.
Ce document n'est pas figé, et il et ammené à être modifié souven=
t.
Au début du métré de chaque batiment, ne ligne spéciale indique le
titre.
Ce que voudrais c'est qu'à l'impression du document, le nom du
batiment concerné apparaisse en haut de chaque page.
j'ai essayé de définir plusieurs lignes de titre, mais cela ne
fonctionne pas car les lignes de titres doivent être adgacentes.
Vous pourriez me conseiller d'insérer avant chaque page mon titre,
mais cela coupe le dynamisme du doc, et obligerait à refaire la manip
après chaque modification.
Une idée ?
Oui, Michdenis, ce serait une bonne solution, mais je ne peux
malheureusement pas éclater en plusieurs feuilles.
j'ai l'obligation de tout concerver sur une seule feuille.
"Fredo(67)" a écrit
utiliser les filtres et gestionnaire de vues (voir l'aide )
Dans la procédure, il y a quelques variables à modifier comme le nom "UNIQUE"
des bâtiments et le nom de la feuille où sont les données.
'---------------------------------------------------
Sub test()
Dim Arr(), DerCol As Integer, Rg As Range, T()
Dim X As Integer, Sh As Worksheet, DerLig As Long
Dim A As Integer, Elt As Variant, S As Integer
'Liste des noms des bâtiments à adapter
Arr = Array("Bâtiment1", "Bâtiment2", "Bâtiment3", "Bâtiment4", _
"Bâtiment5", "Bâtiment6", "Bâtiment7", "Bâtiment8")
'Nom Feuille à adapter
Set Sh = ThisWorkbook.Worksheets("Feuil1")
With Sh
DerCol = .Cells.Find(What:="*", _
LookIn:=xlFormulas, _
SearchOrder:=xlByColumns, _
SearchDirection:=xlPrevious).Column
S = 1: X = 1
For A = 1 To UBound(Arr)
With .Cells
Set Rg = .Find(What:=Arr(A), LookIn:=xlValues, _
lookat:=xlWhole)
If Not Rg Is Nothing Then
ReDim Preserve T(1 To S)
T(S) = Sh.Range(Sh.Cells(X, "A"), _
Sh.Cells(Rg.Row - 1, DerCol)).Address
S = S + 1
X = Rg.Row
If S = UBound(Arr) + 1 Then
DerLig = Sh.Cells.Find(What:="*", _
LookIn:=xlValues, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Row
ReDim Preserve T(1 To S)
T(S) = Sh.Range(Sh.Cells(X, "A"), _
.Cells(DerLig, DerCol)).Address
End If
End If
End With
Next
End With
A = 0
For Each Elt In T
With Sh
'Tu peux ajouter d'autres propriétés si besoin...
.PageSetup.PrintArea = Elt
.PageSetup.Order = xlOverThenDown
.PageSetup.CenterHeader = Arr(A)
.PrintPreview 'Après test, remplace par .PrintOut
.PageSetup.PrintArea = ""
End With
A = A + 1
Next
End Sub
'---------------------------------------------------
MichD
------------------------------------------
"Fredo(67)" a écrit dans le message de groupe de discussion :
Opps désolé pour les multi message, ma session avait expiré.
Oui, Michdenis, ce serait une bonne solution, mais je ne peux
malheureusement pas éclater en plusieurs feuilles.
j'ai l'obligation de tout concerver sur une seule feuille.
je vais tester ça.
On 29 fév, 04:49, "MichD"
Absolument pas .. >éclater en plusieurs feuilles.
Le principe de "titres à répèter" ou définition d'un nom:
Impression_des_titres
te permet de répéter le titre< sur chaque page d'impression et n'éclate en
rien le document lui même.
Cordialement
--
LSteph
"Fredo(67)" news:
Opps désolé pour les multi message, ma session avait expiré.
Oui, Michdenis, ce serait une bonne solution, mais je ne peux
malheureusement pas éclater en plusieurs feuilles.
j'ai l'obligation de tout concerver sur une seule feuille.