Zone d'impression défini par vba [Résolu/Fermé]

Signaler
Messages postés
112
Date d'inscription
mardi 2 juin 2015
Statut
Membre
Dernière intervention
22 mai 2018
-
 Bourrique66 -
Bonjour,
À l’aide de l’enregistreur de macro dans la feuille tableau de bord j’ai défini une zone d’impression qui va de A8 : N8, la ligne 1 du tableau doit être répétée sur toutes les pages (le vrai tableau contient plusieurs centaines de lignes). La zone d’impression change chaque fois que j’ajoute une colonne à l’aide du bouton ajout de colonne. Une colonne j’ajoute et une colonne se masque (ajout de colonne 2019 la colonne 2017 se masque donc la zone d’impression devrait être A8 : O8 dans ce tableau. Comment faire pour que la zone d’impression s’adapte à la dernière colonne non vide ainsi que la dernière ligne remplie. Merci de prendre un peu de votre temps pour m’aider.
Je joins un fichier.
https://www.cjoint.com/c/HEwtjWuEdB4

3 réponses

Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 166
Bonjour Bourrique66,

Ton classeur avec la macro évolutive en fonction de ton tableau :

https://www.cjoint.com/c/HEwtFeQuoEl
Messages postés
17232
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
22 septembre 2020
4 261
Bonsoir,

Je ne sais pas si j'ai tout compris, cette macro te permet d'imprimer un tableau variable en nombre de ligne et colonne et s'adaptera automatiquement en nombre de lignes et colonnes

Sub test()
Range([A1], [A65535].End(xlUp).End(xlToRight)).PrintOut Copies:=1
End Sub


et si tu veux simplement sélectionner le tableau variable
Range([A1], [A65535].End(xlUp).End(xlToRight)).select

et pour définir zone d'impression variable
ActiveSheet.PageSetup.PrintArea = Range([A1], [A65535].End(xlUp).End(xlToRight)).Address

A+
Mike-31

Je suis responsable de ce que je dis, pas de ce que tu comprends...

Bonjour,
Merci à vous deux , les deux solutions fonctionnent parfaitement reste à choisir laquelle prendre. Encore merci