Se connecter avec
S'enregistrer | Connectez-vous

mise en page paysage en vba

Dernière réponse : dans Programmation
Lassé par la pub ? Créez un compte

effectivement ca fonctionne
Pour le code je voulais pas trop le mettre car je comprennais pas tout et je voulais pas induire d'autre personne en erreur mais de toute facon c'est le code que l'on obtien si on fait un enregistrement de macro
Ca donne ca :
  1. Sub Macro2()
  2.  
  3. With ActiveSheet.PageSetup
  4. .PrintTitleRows = ""
  5. .PrintTitleColumns = ""
  6. End With
  7. ActiveSheet.PageSetup.PrintArea = ""
  8. With ActiveSheet.PageSetup
  9. .LeftHeader = ""
  10. .CenterHeader = ""
  11. .RightHeader = ""
  12. .LeftFooter = ""
  13. .CenterFooter = ""
  14. .RightFooter = ""
  15. .LeftMargin = Application.InchesToPoints(0.787401575)
  16. .RightMargin = Application.InchesToPoints(0.787401575)
  17. .TopMargin = Application.InchesToPoints(0.984251969)
  18. .BottomMargin = Application.InchesToPoints(0.984251969)
  19. .HeaderMargin = Application.InchesToPoints(0.4921259845)
  20. .FooterMargin = Application.InchesToPoints(0.4921259845)
  21. .PrintHeadings = False
  22. .PrintGridlines = False
  23. .PrintComments = xlPrintNoComments
  24. .PrintQuality = 600
  25. .CenterHorizontally = False
  26. .CenterVertically = False
  27. .Orientation = xlLandscape
  28. .Draft = False
  29. .PaperSize = xlPaperA4
  30. .FirstPageNumber = xlAutomatic
  31. .Order = xlDownThenOver
  32. .BlackAndWhite = False
  33. .Zoom = 100
  34. End With
  35. End Sub


Comme tu peux le voir c'est assez indigeste et tres à s'executer
Voila encore merci
Expert Programmation

Allez un ptit truc : quand tu valides un écran, toutes les valeurs de tous les champs de l'écran sont enregistrées dans la macro. Alors pour ton changement d'orientation, tu enregistres la manif pour mettre dans un sens et tu recommence pour le mettre dans l'autre sens. Ensuite tu compares les deux versions et tu te rends compte qu'il n'y a qu'une ligne différente. Tu vires alors toutes les lignes identiques. Tu n'oublies pas quand même de garder les WITH. Et tu condenses tout ça. Il reste une seule ligne.

Exemple pour changer l'orientation :
  1. With ActiveSheet.PageSetup
  2. If .Orientation = xlLandscape Then
  3. .Orientation = xlPortrait
  4. Else
  5. .Orientation = xlLandscape
  6. End If
  7. End With
Si ça peut aider.
Lassé par la pub ? Créez un compte