Zone d impression variable

Résolu/Fermé
Blussang83 Messages postés 13 Date d'inscription mardi 1 avril 2014 Statut Membre Dernière intervention 7 août 2014 - 28 juil. 2014 à 16:28
ButteDuLac Messages postés 495 Date d'inscription jeudi 5 mars 2009 Statut Membre Dernière intervention 24 octobre 2020 - 19 nov. 2014 à 16:45
Bonjour,

je souhaite imprimer un tableau qui contient des formules mais la longueur de ce tableau est variable. il peut contenir 10 lignes comme 100
je souhaiterais faire une mise en page "conditionnelle" selon le nombre de lignes qui s'affiche , que la zone d'impression augmente ou diminue
et mon problème est que les cellules vides , ne le sont pas car elles contiennent des formules

J'ai cherché sur le forum mais je pense qu'il faut une macro mais je ne sais faire que celles
enregistrées :-(
Existe il une mise en page "conditionnelle" ?
Merci par avance pour votre aide
je joins un fichier exemple au cas ou mon cas (desespéré ) inspire quelqu'un !!

https://www.cjoint.com/?0GCqAJaotPj

4 réponses

via55 Messages postés 14405 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 25 avril 2024 2 703
28 juil. 2014 à 16:52
Bonjour

En fait il suffit de compter le nombre de lignes avec une valeur numérique et d'ajouter 1 à cause de la ligne de titre

https://www.cjoint.com/?0GCqZtKRH7l

Cdlmnt
0
ButteDuLac Messages postés 495 Date d'inscription jeudi 5 mars 2009 Statut Membre Dernière intervention 24 octobre 2020 40
18 nov. 2014 à 15:39
J'avais le même problème. J'aurais voulu utiliser la macro, mais le lien n'est plus valide.
Est-ce possible de la remettre, svp? (Merci, merci!!!)
0
via55 Messages postés 14405 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 25 avril 2024 2 703
18 nov. 2014 à 16:13
Bonjour

Je n'ai plus la macro mais voici un exemple de base :
Sub Zone_Impress()
' compte les valeurs numériques en colonne B
nv = WorksheetFunction.Count(Range("B:B"))
' nombre de lignes avant les valeurs (blanc, titre ..)
nl = 2 ' à adapter
' dernière colonne de la zone d'impression
dcol = "J" ' à adapter
'dernière ligne de la zone d'impression
dl = nv + nl
'définition zone d'impression
ActiveSheet.PageSetup.PrintArea = "$A$1:$" & dcol & dl
End Sub


Le principe est de compter les valeurs numériques dans une colonne (ici la B) et d'y ajouter le nombre de lignes précédentes (titre etc) pour obtenir le n° de la dernière ligne à imprimer et pouvoir définir une zone d'impression depuis A1 jusqu'à une colonne déterminée et cette dernière ligne

Cdlmnt
0
ButteDuLac Messages postés 495 Date d'inscription jeudi 5 mars 2009 Statut Membre Dernière intervention 24 octobre 2020 40
19 nov. 2014 à 16:45
Un énorme merci!!!!
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 214
28 juil. 2014 à 18:39
Bonjour,

En utilisant les plans tu peux te passer de la 2nde feuille.
Il suffit de cliquer sur le 1 ou le 2 en haut à gauche pour masquer les colonnes non voulues.
Et plus besoin de vba.
https://www.cjoint.com/c/DGCsNnimgmU

eric
0
Blussang83 Messages postés 13 Date d'inscription mardi 1 avril 2014 Statut Membre Dernière intervention 7 août 2014
28 juil. 2014 à 22:04
Merci à vous
je regarde ça sur mon fichier de base demain matin
Bonne soiree
0
Blussang83 Messages postés 13 Date d'inscription mardi 1 avril 2014 Statut Membre Dernière intervention 7 août 2014
29 juil. 2014 à 22:27
bonsoir
j'ai pris et adapté la macro de Via55, ça marche super bien !!
merci merci beaucoup

Bonne soirée
0