XL 2010 Zone d'impression par vba

  • Initiateur de la discussion Initiateur de la discussion Bizarre
  • 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 !

Bizarre

XLDnaute Nouveau
Bonjour,

À l’aide de l’enregistreur de macro 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.
 
Bonsoir le fil, le forum

@Bizarre
Vois ce que les codes ci-dessous t'inspirent
VB:
Sub test_I()
Efface_Zone_Imp '<- pour test
With ActiveSheet
'ligne ci-dessous juste pour test
MsgBox Application.Rept("Zone impression non-définie", Len(.PageSetup.PrintArea) = 0), vbInformation, "Test"
.PageSetup.PrintArea = .UsedRange.Address
MsgBox "Zone d'impression= " & .UsedRange.Address, vbExclamation '<- pour test
End With
End Sub
Sub test_II()
Dim Li&, Co&
Efface_Zone_Imp '<- pour test
With ActiveSheet
'ligne ci-dessous juste pour test
MsgBox Application.Rept("Zone impression non-définie", Len(.PageSetup.PrintArea) = 0), vbInformation, "Test"
Li = .Cells.Find("*", LookIn:=-4123, SearchOrder:=1, SearchDirection:=2).Row
Co = .Cells.Find("*", LookIn:=-4123, SearchOrder:=2, SearchDirection:=2).Column
.PageSetup.PrintArea = .[A1].Resize(Li, Co).Address
MsgBox "Zone d'impression= " & .[A1].Resize(Li, Co).Address, vbExclamation '<- pour test
End With
End Sub
Sub Efface_Zone_Imp()
ActiveSheet.PageSetup.PrintArea = ""
End Sub
 
- 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

Discussions similaires

Réponses
7
Affichages
163
Réponses
3
Affichages
338
Retour