VBA zone d'impression variable en nombre de lignes ET de colonnes

fabancel

XLDnaute Junior
Bonjour.

J'ai trouvé beaucoup de sujets résolus sur des macros qui permettent de définir des zones d'impression sur un nombre variable de lignes mais à nombre de colonnes fixe. Je ne trouve rien pour les zones dont le nombre de colonnes est variable.

J'ai déjà une macro qui vient remplir mon tableau en rajoutant des colonnes et des lignes. si je l'exécute 3 fois, j'aurais 3 colonnes (etc...) en plus des libellés à gauche. En fonction des données importées, le nombre de lignes peut également varier.

Je voudrais que cette nouvelle macro sélectionne depuis la case A6 jusqu'à la fin du tableau (dont je ne connais à priori ni le nombre de colonnes, ni le nombre de lignes) puis définisse cette zone comme zone d'impression.

Merci beaucoup aux génies qui pourront m'aider.
 

fabancel

XLDnaute Junior
Re : VBA zone d'impression variable en nombre de lignes ET de colonnes

Bonjour tototiti2008.

Merci mais ça ne fonctionne pas.

Je vous joins le classeur. La macro s'appelle "impression"

Elle se trouve sur la feuille "Feuil1"

Ce tableau est complété quand j'actionne la macro sur le bouton "comparateur" qui sur la feuille "module interrogation"

Merci pour vos conseils.
 

Pièces jointes

  • code mvt.xls
    129.5 KB · Affichages: 171
  • code mvt.xls
    129.5 KB · Affichages: 185
  • code mvt.xls
    129.5 KB · Affichages: 192

fabancel

XLDnaute Junior
Re : VBA zone d'impression variable en nombre de lignes ET de colonnes

Merci Beaucoup de votre persévérance.

Seulement, je crains que cela ne fonctionne pas.

J'avais essayé ce code. Il réussit bien à sélectionner la bonne zone, mais ne la définit pas comme zone d'impression.

La preuve :
Etant donné que la zone commence à la sixème ligne ("A6"), les 5 lignes précédentes, dans lesquelles apparait le bouton "clear", ne devraient pas être imprimées. Or, en lançant la macro, on obtient une impression où apparaît le bouton.

Donc ça ne fonctionne pas et je m'arrache les cheveux sur ce code.

désolé de vous embêter mais si quelqu'un avait une solution, ce serait top.

Merci encore.
 

job75

XLDnaute Barbatruc
Re : VBA zone d'impression variable en nombre de lignes ET de colonnes

Bonjour fabancel, salut Marc,

Code:
ActiveSheet.PageSetup.PrintArea = ActiveSheet.UsedRange.Address
définira bien la zone d'impression...

... à condition de supprimer plus bas :

Code:
ActiveSheet.PageSetup.PrintArea = ""
Une fois la zone d'impression définie, il ne faut pas l'annuler :rolleyes:

A+
 

job75

XLDnaute Barbatruc
Re : VBA zone d'impression variable en nombre de lignes ET de colonnes

Re,

Pour être complet, s'il y a des cellules renseignées sur les lignes 1 à 5, utilisez :

Code:
Dim plage As Range
Set plage = Intersect([6:65536], ActiveSheet.UsedRange)
If Not plage Is Nothing Then ActiveSheet.PageSetup.PrintArea = plage.Address
A+
 

Discussions similaires

Réponses
7
Affichages
355

Statistiques des forums

Discussions
312 249
Messages
2 086 609
Membres
103 260
dernier inscrit
NHOURRA