VBA et zone d'impression
Alors
1) je n'utilise pas Excel
2) je connais encore moins les macros (mais VB oui ==> :D || :(, à vous de voter !)
Par contre, ma geek attitude fais que j'ai pris du temps sur ce pont pour m'y atteler. Alors, pourquoi pas en faire profiter le plus de monde
Le problème
C'est à dire : imprimer de la cellule B1 à P20.
La valeur "$P$20" peut changer mais elle sera toujours inscrite dans la cellule C1. La valeur B1 est fixe.
La solution
Sub Print_Area()
Dim My_Range As String
On Error Resume Next 'enables error handling
My_Range = Range("C1")
ActiveSheet.PageSetup.PrintArea = Range("B1:" & My_Range).Address
ActiveSheet.PageSetup.Orientation = xlLandscape
ActiveWindow.SelectedSheets.PrintOut
If Err > 0 Then MsgBox "Name or range specified is not valid."
End Sub
Vive les ActiveSheet, et vive l'impression en mode paysage.
Note : il est possible de remplacer le mode paysage par le mode portrait classique :
ActiveSheet.PageSetup.Orientation = xlPortrait
Des liens
THE lien, je dirais même : http://exceltips.vitalnews.com/E090_VBA_Examples.html
Un grand merci car cela m'a permis d'apprendre rapidement les bases des macros Excel (orienté VBA, bien sûr ;) )
Et quand même, un
Private Sub Workbook_Open()
MsgBox "Hello"
End Sub
Pour s'amuser :D