POLYKROMY - Excel Newsletter No 6 - 31 Janvier 2002
 
Bonjour à tous,
Un numéro spécial consacré à la lisibilité des grands tableaux, grâce notamment à ma macro de repère interactif.
 
Voir la newsletter à partir d'internet : www.polykromy.com/nl/nl6/nl6.html
 
Au programme :
 
 
Utilisez les volets pour laisser afficher les titres des lignes et colonnes :
 
Vous connaissez certainement déjà le fractionnement à partir des zones suivantes :
 
                                    
 
Puis, il faut ensuite figer les volets via le menu Fenêtres.
 
Mais saviez-vous que vous pouviez effectuer tout cela en une seule action ?
- Positionnez-vous sur la cellule se trouvant en dessous et à droite des volets désirés.
- Sélectionnez ensuite le menu Fenêtre, puis Figer les volets.
 
Vous pouvez aussi ajouter un bouton permettant de faire cette opération :
Menu Affichage - Barres d'outils - Personnaliser..., dans l'onglet Commandes, sélectionnez l'item Fenêtre et Aide (?) et finalement faites glisser le bouton "Verrouiller les volets" vers l'une de vos barres d'outils.
Ce bouton permet à la fois de figer, mais aussi de libérer les volets.
 
 
Ajouter un repère à vos grands tableaux - le code :
 
Ce code fonctionne à l'aide d'une procédure événementielle.
Ces procédures spéciales permettent de gérer les "événements", comme par exemple un changement de sélection, puis d'y affecter le code voulu. Elles sont situées au niveau de la feuille dans l'éditeur de Visual Basic (voir plus bas l'explication animée).
Ici, ce code crée deux rectangles qui encadreront la partie haute et gauche de la cellule, permettant de mieux se repérer dans de grands tableaux.
 
''***DEBUT DU CODE***
'Cette macro a été créée par Gaëtan Mourmant
'Contact : contact@polykromy.com
 
'*** Définition des variables ***
'Hauteur de la cellule active
h = ActiveCell.Height
 
'Largeur de la cellule active
w2 = ActiveCell.Width
 
'Hauteur entre la cellule active et la première ligne
t = ActiveCell.Top
 
'Largeur entre la cellule active et la première colonne
w = ActiveCell.Left
 
'Teste si les rectangles existent déjà. Dans ce cas, on les efface.
'On utilise ici On Error Resume Next, qui permet de tester
' l'erreur de création d'un rectangle en double portant le même nom.
On Error Resume Next
ActiveSheet.Shapes("RectangleV").Delete
On Error Resume Next
ActiveSheet.Shapes("RectangleH").Delete
 

' Ajoute les rectangles en fonction des coordonnées précédemment calculées.
' Les rectangles sont transparents, de grosseur 3 et de couleur rouge (10)
' On ne peut pas les imprimer.
ActiveSheet.Shapes.AddShape(msoShapeRectangle, 0, t, w, h).Name = "RectangleV"
With ActiveSheet.Shapes("RectangleV")
    .Fill.Visible = msoFalse
    .Fill.Transparency = 0#
    .Line.Weight = 3#
    .Line.ForeColor.SchemeColor = 10
    .PrintObject = False
End With
 
ActiveSheet.Shapes.AddShape(msoShapeRectangle, w, 0, w2, t).Name = "RectangleH"
 
With ActiveSheet.Shapes("RectangleH")
    .Fill.Visible = msoFalse
    .Fill.Transparency = 0#
    .Line.Weight = 3#
    .Line.ForeColor.SchemeColor = 10
    .PrintObject = False
End With
'*** FIN DU CODE ***

Vous pouvez librement vous inspirer de ce code pour ajouter vos propres repères à vos tableaux. Une référence à l'auteur sera cependant grandement appréciée.
 
 
Méga-astuce animée : Utilisez une macro événementielle
                            pour vous repérer dans vos grande feuilles de calculs.
 
Cette macro est disponible en téléchargement à l'adresse suivante :
 
Pour affecter cette macro à une feuille, vous devez au préalable copier le code ci-dessus (sélectionner le code puis, Edition Copier) ou à partir du fichier disponible sur mon site web. Puis, il suffit de suivre la procédure suivante :
 
 
Récapitulatif de l'ensemble de la procédure :
- Copier le code dans le presse-papier.
- Créer un nouveau fichier ou prendre un fichier existant.
- Se positionner ensuite dans l'éditeur de Visual Basic (Outils - Macros - Visual Basic Editeur) et
- Double-cliquer sur la feuille à laquelle on veut associer la macro.
- Choisir ensuite "Worksheet" dans le menu déroulant "(Général)".
- Coller le code à l'intérieur de la procédure ainsi créée.
- Revenir sur la feuille et tester le code.
 
Modifier la couleur du repère :
 
Dans la macro, se trouve la commande suivante :
    .Line.ForeColor.SchemeColor = 10
C'est cette propriété qui gère la couleur du repère.
Il suffit alors de changer ce nombre pour modifier la couleur du repère.
 
Vous pouvez aussi vous amuser à changer la taille du trait :
      .Line.Weight = 3#
 
Sur ce, n'hésitez-pas à "transférer" cette lettre à vos amis, celle-ci est gratuite et ne demande qu'à être connue.
 
Gaëtan Mourmant
www.polykromy.com