Sur différentes feuilles excel je souhaiterais pouvoir insérer deux lignes
vides ainsi qu'une copie de la ligne un de la page active à chaque 16 lignes
tant qu'il y a des données inscrites (certaines feuilles peuvent n'avoir que
14 lignes, alors que d'autres peuvent en avoir 150 par exemple).
De plus, je souhaiterais qu'excel me place sur la première des deux lignes
vides "Page un de ...."
Et que chaque segment de 16 lignes plus le ligne entête et la ligne "footer"
soit une page à imprimer....
J'en demande pas mal pour un vendredi n'est-ce pas....!!!
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
michdenis
Bonjour Denys,
Il y a ceci : Adapte le nom de la feuille à 3 endroits dans la sub... Il reste quelques trucs à ajouter selon ton goût !
'--------------------------------------------- Sub test()
Dim Hp As HPageBreak Dim Rg As Range, X As Long Dim NbPages As Long, A As Long
With Worksheets("Feuil2") Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row) End With
X = 1 Do While X < Rg.Rows.Count With Worksheets("Feuil2") Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row) End With If X = 1 Then Rg(X, 1).Resize(2).EntireRow.Insert Else Rg(X, 1).Resize(2).EntireRow.Insert Rg.Parent.HPageBreaks.Add Before:=Rg.Offset(X - 1) End If X = X + 18 Loop A = 1 With Worksheets("feuil2") NbPages = .HPageBreaks.Count + 1 .Range("A1") = "Page " & A & " de " & NbPages & " Pages" For Each Hp In .HPageBreaks .HPageBreaks(A).Location = "Page " & A + 1 & " de " & NbPages & " Pages" A = A + 1 Next End With
End Sub '---------------------------------------------
Salutations!
"Denys" a écrit dans le message de news: Bonjour à tous,
Sur différentes feuilles excel je souhaiterais pouvoir insérer deux lignes vides ainsi qu'une copie de la ligne un de la page active à chaque 16 lignes tant qu'il y a des données inscrites (certaines feuilles peuvent n'avoir que 14 lignes, alors que d'autres peuvent en avoir 150 par exemple).
De plus, je souhaiterais qu'excel me place sur la première des deux lignes vides "Page un de ...."
Et que chaque segment de 16 lignes plus le ligne entête et la ligne "footer" soit une page à imprimer....
J'en demande pas mal pour un vendredi n'est-ce pas....!!!
Merci beaucoup
Denys
Bonjour Denys,
Il y a ceci :
Adapte le nom de la feuille à 3 endroits dans la sub...
Il reste quelques trucs à ajouter selon ton goût !
'---------------------------------------------
Sub test()
Dim Hp As HPageBreak
Dim Rg As Range, X As Long
Dim NbPages As Long, A As Long
With Worksheets("Feuil2")
Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row)
End With
X = 1
Do While X < Rg.Rows.Count
With Worksheets("Feuil2")
Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row)
End With
If X = 1 Then
Rg(X, 1).Resize(2).EntireRow.Insert
Else
Rg(X, 1).Resize(2).EntireRow.Insert
Rg.Parent.HPageBreaks.Add Before:=Rg.Offset(X - 1)
End If
X = X + 18
Loop
A = 1
With Worksheets("feuil2")
NbPages = .HPageBreaks.Count + 1
.Range("A1") = "Page " & A & " de " & NbPages & " Pages"
For Each Hp In .HPageBreaks
.HPageBreaks(A).Location = "Page " & A + 1 & " de " & NbPages & " Pages"
A = A + 1
Next
End With
End Sub
'---------------------------------------------
Salutations!
"Denys" <Denys@discussions.microsoft.com> a écrit dans le message de news: 5CAAF400-FB53-402C-AC8E-32F4C5ECD654@microsoft.com...
Bonjour à tous,
Sur différentes feuilles excel je souhaiterais pouvoir insérer deux lignes
vides ainsi qu'une copie de la ligne un de la page active à chaque 16 lignes
tant qu'il y a des données inscrites (certaines feuilles peuvent n'avoir que
14 lignes, alors que d'autres peuvent en avoir 150 par exemple).
De plus, je souhaiterais qu'excel me place sur la première des deux lignes
vides "Page un de ...."
Et que chaque segment de 16 lignes plus le ligne entête et la ligne "footer"
soit une page à imprimer....
J'en demande pas mal pour un vendredi n'est-ce pas....!!!
Il y a ceci : Adapte le nom de la feuille à 3 endroits dans la sub... Il reste quelques trucs à ajouter selon ton goût !
'--------------------------------------------- Sub test()
Dim Hp As HPageBreak Dim Rg As Range, X As Long Dim NbPages As Long, A As Long
With Worksheets("Feuil2") Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row) End With
X = 1 Do While X < Rg.Rows.Count With Worksheets("Feuil2") Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row) End With If X = 1 Then Rg(X, 1).Resize(2).EntireRow.Insert Else Rg(X, 1).Resize(2).EntireRow.Insert Rg.Parent.HPageBreaks.Add Before:=Rg.Offset(X - 1) End If X = X + 18 Loop A = 1 With Worksheets("feuil2") NbPages = .HPageBreaks.Count + 1 .Range("A1") = "Page " & A & " de " & NbPages & " Pages" For Each Hp In .HPageBreaks .HPageBreaks(A).Location = "Page " & A + 1 & " de " & NbPages & " Pages" A = A + 1 Next End With
End Sub '---------------------------------------------
Salutations!
"Denys" a écrit dans le message de news: Bonjour à tous,
Sur différentes feuilles excel je souhaiterais pouvoir insérer deux lignes vides ainsi qu'une copie de la ligne un de la page active à chaque 16 lignes tant qu'il y a des données inscrites (certaines feuilles peuvent n'avoir que 14 lignes, alors que d'autres peuvent en avoir 150 par exemple).
De plus, je souhaiterais qu'excel me place sur la première des deux lignes vides "Page un de ...."
Et que chaque segment de 16 lignes plus le ligne entête et la ligne "footer" soit une page à imprimer....
J'en demande pas mal pour un vendredi n'est-ce pas....!!!
Merci beaucoup
Denys
Denys
Bonjour Denis,
Je sais bien qu'un jour tu m'as dis de faire attention à mes adjectifs, mais là c'est carrément phénoménal !!!!! Incroyable le temps que tu viens de me sauver !!!!
Merci beaucoup... Tout est parfait
Bonne fin de semaine
Denys
Bonjour Denys,
Il y a ceci : Adapte le nom de la feuille à 3 endroits dans la sub... Il reste quelques trucs à ajouter selon ton goût !
'--------------------------------------------- Sub test()
Dim Hp As HPageBreak Dim Rg As Range, X As Long Dim NbPages As Long, A As Long
With Worksheets("Feuil2") Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row) End With
X = 1 Do While X < Rg.Rows.Count With Worksheets("Feuil2") Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row) End With If X = 1 Then Rg(X, 1).Resize(2).EntireRow.Insert Else Rg(X, 1).Resize(2).EntireRow.Insert Rg.Parent.HPageBreaks.Add Before:=Rg.Offset(X - 1) End If X = X + 18 Loop A = 1 With Worksheets("feuil2") NbPages = .HPageBreaks.Count + 1 .Range("A1") = "Page " & A & " de " & NbPages & " Pages" For Each Hp In .HPageBreaks .HPageBreaks(A).Location = "Page " & A + 1 & " de " & NbPages & " Pages" A = A + 1 Next End With
End Sub '---------------------------------------------
Salutations!
"Denys" a écrit dans le message de news: Bonjour à tous,
Sur différentes feuilles excel je souhaiterais pouvoir insérer deux lignes vides ainsi qu'une copie de la ligne un de la page active à chaque 16 lignes tant qu'il y a des données inscrites (certaines feuilles peuvent n'avoir que 14 lignes, alors que d'autres peuvent en avoir 150 par exemple).
De plus, je souhaiterais qu'excel me place sur la première des deux lignes vides "Page un de ...."
Et que chaque segment de 16 lignes plus le ligne entête et la ligne "footer" soit une page à imprimer....
J'en demande pas mal pour un vendredi n'est-ce pas....!!!
Merci beaucoup
Denys
Bonjour Denis,
Je sais bien qu'un jour tu m'as dis de faire attention à mes adjectifs, mais
là c'est carrément phénoménal !!!!! Incroyable le temps que tu viens de me
sauver !!!!
Merci beaucoup... Tout est parfait
Bonne fin de semaine
Denys
Bonjour Denys,
Il y a ceci :
Adapte le nom de la feuille à 3 endroits dans la sub...
Il reste quelques trucs à ajouter selon ton goût !
'---------------------------------------------
Sub test()
Dim Hp As HPageBreak
Dim Rg As Range, X As Long
Dim NbPages As Long, A As Long
With Worksheets("Feuil2")
Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row)
End With
X = 1
Do While X < Rg.Rows.Count
With Worksheets("Feuil2")
Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row)
End With
If X = 1 Then
Rg(X, 1).Resize(2).EntireRow.Insert
Else
Rg(X, 1).Resize(2).EntireRow.Insert
Rg.Parent.HPageBreaks.Add Before:=Rg.Offset(X - 1)
End If
X = X + 18
Loop
A = 1
With Worksheets("feuil2")
NbPages = .HPageBreaks.Count + 1
.Range("A1") = "Page " & A & " de " & NbPages & " Pages"
For Each Hp In .HPageBreaks
.HPageBreaks(A).Location = "Page " & A + 1 & " de " & NbPages & " Pages"
A = A + 1
Next
End With
End Sub
'---------------------------------------------
Salutations!
"Denys" <Denys@discussions.microsoft.com> a écrit dans le message de news: 5CAAF400-FB53-402C-AC8E-32F4C5ECD654@microsoft.com...
Bonjour à tous,
Sur différentes feuilles excel je souhaiterais pouvoir insérer deux lignes
vides ainsi qu'une copie de la ligne un de la page active à chaque 16 lignes
tant qu'il y a des données inscrites (certaines feuilles peuvent n'avoir que
14 lignes, alors que d'autres peuvent en avoir 150 par exemple).
De plus, je souhaiterais qu'excel me place sur la première des deux lignes
vides "Page un de ...."
Et que chaque segment de 16 lignes plus le ligne entête et la ligne "footer"
soit une page à imprimer....
J'en demande pas mal pour un vendredi n'est-ce pas....!!!
Je sais bien qu'un jour tu m'as dis de faire attention à mes adjectifs, mais là c'est carrément phénoménal !!!!! Incroyable le temps que tu viens de me sauver !!!!
Merci beaucoup... Tout est parfait
Bonne fin de semaine
Denys
Bonjour Denys,
Il y a ceci : Adapte le nom de la feuille à 3 endroits dans la sub... Il reste quelques trucs à ajouter selon ton goût !
'--------------------------------------------- Sub test()
Dim Hp As HPageBreak Dim Rg As Range, X As Long Dim NbPages As Long, A As Long
With Worksheets("Feuil2") Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row) End With
X = 1 Do While X < Rg.Rows.Count With Worksheets("Feuil2") Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row) End With If X = 1 Then Rg(X, 1).Resize(2).EntireRow.Insert Else Rg(X, 1).Resize(2).EntireRow.Insert Rg.Parent.HPageBreaks.Add Before:=Rg.Offset(X - 1) End If X = X + 18 Loop A = 1 With Worksheets("feuil2") NbPages = .HPageBreaks.Count + 1 .Range("A1") = "Page " & A & " de " & NbPages & " Pages" For Each Hp In .HPageBreaks .HPageBreaks(A).Location = "Page " & A + 1 & " de " & NbPages & " Pages" A = A + 1 Next End With
End Sub '---------------------------------------------
Salutations!
"Denys" a écrit dans le message de news: Bonjour à tous,
Sur différentes feuilles excel je souhaiterais pouvoir insérer deux lignes vides ainsi qu'une copie de la ligne un de la page active à chaque 16 lignes tant qu'il y a des données inscrites (certaines feuilles peuvent n'avoir que 14 lignes, alors que d'autres peuvent en avoir 150 par exemple).
De plus, je souhaiterais qu'excel me place sur la première des deux lignes vides "Page un de ...."
Et que chaque segment de 16 lignes plus le ligne entête et la ligne "footer" soit une page à imprimer....
J'en demande pas mal pour un vendredi n'est-ce pas....!!!