OVH Cloud OVH Cloud

Impression de Valeurs

4 réponses
Avatar
STEN83
Bonjour,
Comment imprimer des feuilles sans les lignes vides, juste les lignes
contenant des enregistrments.

Merci a tous de votre gentillesse
--
Le partage du savoir contribue à l'amélioration de la condition humaine!
Merci à tous

4 réponses

Avatar
Gros Minet
Bonjour,

Sélectionne les lignes puis Format / Ligne / Masquer.

Petite mise en garde : d'après ton post précédent tu as l'air d'alimenter
une "base de données". Si tu veux pouvoir trier ou sélectionner des
enregistrements par la suite, tu ne DOIS PAS avoir de lignes vides...

Cordialement.

Gros Minet.

"STEN83" a écrit dans le message de news:

Bonjour,
Comment imprimer des feuilles sans les lignes vides, juste les lignes
contenant des enregistrments.

Merci a tous de votre gentillesse
--
Le partage du savoir contribue à l'amélioration de la condition humaine!
Merci à tous


Avatar
Michel Gaboly
Bonjour,

La solution est de masquer les lignes vides avant l'impression et de les
réafficher ensuite.

Pour reconnaître qu'une ligne est vide, j'utilise l'astuce suivante : je
fais l'addition du nombre de caractères contenus dans l'ensemble de la
ligne.

Voici un exemple de code :

Sub MasqueLignes()
Dim PremiereLigne As Long, DerLigne As Long, i As Long, Ref As Range
PremiereLigne = ActiveSheet.UsedRange.Row
DerLigne = ActiveSheet.UsedRange.Rows.Count + PremiereLigne - 1
' Masquage des éventuelles lignes vides en haut du tableau
If PremiereLigne > 1 Then
Range("A1:A" & PremiereLigne - 1).EntireRow.Hidden = True
End If
' Masquage des autres lignes vides
ActiveWorkbook.Names.Add "NbCarLigne", RefersToR1C1:= _
"=SUM(LEN(OFFSET(Feuil1!R1,Decal,0)))"
Set Ref = Range("A1:IV1")
For i = PremiereLigne + 1 To DerLigne
ActiveWorkbook.Names.Add "Decal", i - 1
Range("A" & i).EntireRow.Hidden =
IIf(ActiveSheet.Evaluate("NbCarLigne") = 0, True, False)
Next
End Sub

Comme il peut y avoir un groupe de lignes vides en haut de la feuille, o
les masque en une seule opération.

Ensuite on définit un nom, qui grâce à un paramètre (Delta) permet de
totaliser le nb de caractères d'une ligne quelconque.

Enfin une boucle détermine pour chaque ligne de la partie utilisée de la
feuille, si elle est vide, en faisant varier Delta, et la masque si
nécessaire.


Voilà.

Bonjour,
Comment imprimer des feuilles sans les lignes vides, juste les lignes
contenant des enregistrments.

Merci a tous de votre gentillesse



--
Cordialement,

Michel Gaboly
www.gaboly.com

Avatar
STEN83
Merci
--
Le partage du savoir contribue à l'amélioration de la condition humaine!
Merci à tous



Bonjour,

La solution est de masquer les lignes vides avant l'impression et de les
réafficher ensuite.

Pour reconnaître qu'une ligne est vide, j'utilise l'astuce suivante : je
fais l'addition du nombre de caractères contenus dans l'ensemble de la
ligne.

Voici un exemple de code :

Sub MasqueLignes()
Dim PremiereLigne As Long, DerLigne As Long, i As Long, Ref As Range
PremiereLigne = ActiveSheet.UsedRange.Row
DerLigne = ActiveSheet.UsedRange.Rows.Count + PremiereLigne - 1
' Masquage des éventuelles lignes vides en haut du tableau
If PremiereLigne > 1 Then
Range("A1:A" & PremiereLigne - 1).EntireRow.Hidden = True
End If
' Masquage des autres lignes vides
ActiveWorkbook.Names.Add "NbCarLigne", RefersToR1C1:= _
"=SUM(LEN(OFFSET(Feuil1!R1,Decal,0)))"
Set Ref = Range("A1:IV1")
For i = PremiereLigne + 1 To DerLigne
ActiveWorkbook.Names.Add "Decal", i - 1
Range("A" & i).EntireRow.Hidden =
IIf(ActiveSheet.Evaluate("NbCarLigne") = 0, True, False)
Next
End Sub

Comme il peut y avoir un groupe de lignes vides en haut de la feuille, o
les masque en une seule opération.

Ensuite on définit un nom, qui grâce à un paramètre (Delta) permet de
totaliser le nb de caractères d'une ligne quelconque.

Enfin une boucle détermine pour chaque ligne de la partie utilisée de la
feuille, si elle est vide, en faisant varier Delta, et la masque si
nécessaire.


Voilà.

Bonjour,
Comment imprimer des feuilles sans les lignes vides, juste les lignes
contenant des enregistrments.

Merci a tous de votre gentillesse



--
Cordialement,

Michel Gaboly
www.gaboly.com




Avatar
Michel Gaboly
De rien, c'est un plaisir ;-))

Merci
-- Le partage du savoir contribue à l'amélioration de la condition >


Bonjour,

La solution est de masquer les lignes vides avant l'impression et de
les


réafficher ensuite.

Pour reconnaître qu'une ligne est vide, j'utilise l'astuce suivante
: je


fais l'addition du nombre de caractères contenus dans l'ensemble de la
ligne.

Voici un exemple de code :

Sub MasqueLignes()
Dim PremiereLigne As Long, DerLigne As Long, i As Long, Ref As Range
PremiereLigne = ActiveSheet.UsedRange.Row
DerLigne = ActiveSheet.UsedRange.Rows.Count + PremiereLigne - 1
' Masquage des éventuelles lignes vides en haut du tableau
If PremiereLigne > 1 Then
Range("A1:A" & PremiereLigne - 1).EntireRow.Hidden = True
End If
' Masquage des autres lignes vides
ActiveWorkbook.Names.Add "NbCarLigne", RefersToR1C1:= _
"=SUM(LEN(OFFSET(Feuil1!R1,Decal,0)))"
Set Ref = Range("A1:IV1")
For i = PremiereLigne + 1 To DerLigne
ActiveWorkbook.Names.Add "Decal", i - 1
Range("A" & i).EntireRow.Hidden >> IIf(ActiveSheet.Evaluate("NbCarLigne") = 0, True, False)
Next
End Sub

Comme il peut y avoir un groupe de lignes vides en haut de la
feuille, o


les masque en une seule opération.

Ensuite on définit un nom, qui grâce à un paramètre (Delta) permet de
totaliser le nb de caractères d'une ligne quelconque.

Enfin une boucle détermine pour chaque ligne de la partie utilisée
de la


feuille, si elle est vide, en faisant varier Delta, et la masque si
nécessaire.


Voilà.


Bonjour,
Comment imprimer des feuilles sans les lignes vides, juste les
lignes




contenant des enregistrments.

Merci a tous de votre gentillesse





--
Cordialement,

Michel Gaboly
www.gabo



--
Cordialement,

Michel Gaboly
www.gaboly.com