Imprimer avec ligne masquées

  • Initiateur de la discussion Initiateur de la discussion POLO
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

P

POLO

Guest
Bonjour

J'ai un souci avec mon code suivant:

Le but est de masquer les lignes vide d'un tableau qui va de A 32 à L 200 avec la condition si une cellule de la colone F est vide alors on masque puis on imprime et ensuite je réaffiche les lignes masquées.

Avec mon code cela ne fonctionne pas correctement


Private Sub BoutImpression_Click()

Dim Cell As Range
Dim Plage As Range

With Sheets('Saisie')
Set Plage = .Range('f32:f' & range('f200').End(xlUp).Row)


For Each Cell In Plage
If Cell = '' Then
.Rows(Cell.Row).Hidden = True

F1.PrintOut

End If

Next

Sheets('Saisie').Rows.Hidden = False

End Sub

Merci de votre aide
 
re bonjour

En faisant le message je viens de réagir que mon F1.printout était mal placé. en le mettant aprés le next cela fonctionne. Je n'imprime qiue les lignes qui ont des valeurs. Cependant comment définir la zone d'impression uniquement pour la zone des lignes qui ont udes valeurs ?
 
Dans l'énervement et la précipitation je n'avais pas pensé à joindre un fichier pour exemple [file name=imprime_20060418154022.zip size=9505]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/imprime_20060418154022.zip[/file]
 

Pièces jointes

Bonjour Polo,

Tu peux définir la zone d'impression en tant que plage variable et elle s'adaptera au nombre de lignes contenant une valeur en colonne A.

Tu fais insertion - nom - définir, tu cliques sur 'Zone_d_impression' et dans le champ 'Fait référence à' tu mets:

=DECALER(Feuil1!$A$31;;;NBVAL(Feuil1!$A:$A)+1;12)

puis tu fais 'Ajouter' et 'fermer'.

J'ai figé la largeur à 12 mais tu peux aussi mettre une formule comme NBVAl.

@+

Gael
 
Merci de ta réponse mais je dois etre nul car ça ne marche pas

Je fais comme tu dis et je met F à la place de A
en effet c'est ma colonne F qui est déterminante.

=DECALER(Feuil1!$A$31;;;NBVAL(Feuil1!$F:$F)+1;12)

Si j'ai bien compris cela me permet de définir la zone de A31 à L31 en n'imprimant que les lignes de la colone F qui sont remplies.
Pour moi cela n'imprime que la ligne d'en tête et 5 première ligne de la sélection sans faire apparaitre les ligne ou il il y les valeurs 10 20 et 15.

Ne peux t on pas inserer la même fonction dans mon code car au dessus du tableau il y y bien sur des données figées qui vont être à imprimer.

Je craque

Merci et à plus
 
Rebonjour Polo,

En fait, il ne faut pas mettre 'F' à la place de 'A' car cela correspond au nombre de lignes total à prendre en compte qui est le nombre de valeurs de la colonne A.

Si tu ajoute des lignes (avec une valeur en colonne A) elles seront prises en compte automatiquement dans l'impression, mais cela ne masque pas les lignes qui ne contiennent rien en 'F' et ne peut pas servir à les sélectionner.

Tu peux essayer avec un filtre automatique avec la macro suivante:

Sub Macro1()
Range('F31').Select
Selection.AutoFilter
Selection.AutoFilter Field:=6, Criteria1:='InfSup'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Selection.AutoFilter
End Sub

Attention, il faut remplacer InfSup par les signes 'plus petit que' et 'plus grand que'.

@+

Gael
 
Je crois réver : 🙂 CA MARCHE 🙂
Bien sur je ne doutais pas de trouver la solution au travers des compétences de gens comme toi mais là c'est RESPECT car çà faisait 4 jours que je me prenais la tête la dessus.

Ce code là je suis pas prêt de l'oublier et je souhaites qu'il puisse servir à d'autres (mêem si en le visualisant on peut se dire qu'il a l'air tout simple.

Un peu de poésie (et de Coteau du LAYON) çà peut pas faire de mal :
Avec Gael la vie est plus belle sur Excel.

Bon j'arrête de délirer mais sincèrement merci.

A plus
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Réponses
15
Affichages
793
Retour