Macro Impression TCD Problème
Sub Print_TCD() 'Sebast
If ActiveSheet.PivotTables.Count > 0 Then
Bonjour,
Sur un autre post Sebas avait mis cette macro pour ajuster le format d'impression au TCD qui peut varier en taille et donc permet de ne pas refaire le format d'impression à chaque fois.
Comment modifier la macro pour inclure dans le format d'impression
4 lignes avant le début du TCD et 1 colonne à droite du TCD
Et que le tableau d'imprime sur X feuille en hauteur
X varie selon la longueur du TCD, mais doit toujours rester à 1 page en largeur.
Votre aider serait grandement appréciée!!!
Margir
With ActiveSheet.PageSetup
.PrintArea = ActiveSheet.PivotTables("Tableau croisé dynamique1").TableRange2.Address
' en écrivant ... TableRange2.Address et non TableRange1.Address, tu sélectionnes y compris le bloc au-dessus du TCD,
' celui où tu sélectionnes tes restrictions
.FitToPagesTall = 1 ' pour ajuster à la taille de la page en hauteur
.FitToPagesWide = 1 ' pour ajuster à la taille de la page en largeur
.CenterHorizontally = True ' centrage horizontal
.CenterVertically = True ' centrage vertical
ActiveSheet.PrintOut
End With
End If
End Sub
J'en ai trouvé un bout de réponse, mais il manque toujours pour ajouter une colonne à droite de mon tableau croisé
Pour imprimer mes titres
.PrintTitleRows = "$9:$11"
Pour imprimer sur plus d'une page, j'ai changé le format d'impression de mon onglet
J'ai mis imprimer sur 1 page en largeur et rien en longueur et enlever la ligne de code spécifique à ça
Voici ce que ça donne
If ActiveSheet.PivotTables.Count > 0 Then
With ActiveSheet.PageSetup
.PrintArea = ActiveSheet.PivotTables("Préparation").TableRange2.Address
' en écrivant ... TableRange2.Address et non TableRange1.Address, tu sélectionnes y compris le bloc au-dessus du TCD,
' celui où tu sélectionnes tes restrictions
.PrintTitleRows = "$9:$11"
.FitToPagesWide = 1 ' pour ajuster à la taille de la page en largeur
ActiveSheet.PrintOut
End With
End If