7 règles d’or pour appréhender un fichier Excel complexe !

7 regles images 1Bon­jour à tous,

Cela va sure­ment vous arriv­er : vous démar­rez une nou­velle mis­sion et vous devez met­tre à jour et/ou per­fec­tion­ner un fichi­er méga-com­plexe. Pas de panique !

De façon à éviter des gross­es cat­a­stro­phes, voici une série de règles d’or pour y arriv­er au mieux.
Bien sur, si vous voyez d’autres aspects, n’hésitez-pas à com­menter ci-dessous :-).

Comme me l’a fait remar­quer mon ami Dominique H., ces règles sont itéra­tives et l’or­dre dépend du pro­jet : “Pour ma part, je doc­u­mente plus rapi­de­ment qu’il n’est con­seil­lé par cette méth­ode. Autrement dit, j’al­terne des actions visant à une com­préhen­sion locale et les actions visant à une com­préhen­sion glob­ale. Donc une alter­nance de top-down et bot­tom-up.”. Mer­ci Dominique ! 

1. Sauvegardez !

Faites une copie du dossier con­tenant les fichiers, assurez-vous que les sauve­g­ardes soient faites régulière­ment et tra­vaillez sur la copie de sauve­g­arde dans un pre­mier temps

En effet, si vous ouvrez un fichi­er com­plexe, il y a de fortes chances que des liaisons avec d’autres fichiers soient actives.

De fait, sauve­g­ardez non seule­ment le fichi­er, mais aus­si les fichiers liés. Si les fichiers sont tous dans le même réper­toire, faites une copie du répertoire.

copier 1

De manière générale, je tente d’éviter les liaisons entre fichiers, mais cela n’est pas tou­jours possible.
Pour voir les liaisons : Onglet Don­nées, Mod­i­fi­er les liens.
liaison_fichier_externe 1

Idéale­ment, tra­vaillez sur le fichi­er de sauve­g­arde pour le com­pren­dre en pro­fondeur avant de mod­i­fi­er le fichi­er original.

2. Discutez avec l’auteur et les utilisateurs du fichier

Ca peut sem­bler évi­dent, mais si l’au­teur du fichi­er est encore joignable, cela peut vous faire gag­n­er un temps considérable.
Passez au moins deux heures avec l’au­teur du fichi­er pour com­pren­dre la philoso­phie du fichi­er, la struc­ture glob­ale et les points déli­cats du fichier.
Dis­cutez aus­si avec les util­isa­teurs pour com­pren­dre com­ment le fichi­er est utilisé.

3. Prenez votre temps

Si le fichi­er est très com­plexe, plusieurs jours sont par­fois néces­saires pour com­pren­dre toute la struc­ture du fichier.

4. Documentez

C’est aus­si un excel­lent moyen de s’as­sur­er que l’on maîtrise com­pléte­ment le fichier.
Pour cela :
— créez une feuille ou un doc­u­ment word dédié à la documentation.
— ajoutez des com­men­taires directe­ment dans les cel­lules — clic droit, ajouter un com­men­taire, ou via l’on­glet Révision :
novueau-commentaire 1

5. Comprenez parfaitement la structure globale

Il s’ag­it ici de pren­dre con­nais­sance de toutes les feuilles qui exis­tent dans le fichier.

- Par exem­ple, assurez vous que vous con­nais­sez les feuilles masquées, clic droit sur une feuille :
feuilles_masquees 1

- ou encore les feuilles masquées via VBA (xlSheetVery­Hid­den).
Ouvrez l’édi­teur de visu­al basic et regardez si des feuilles ont la pro­priétés XLVery­Hid­den — ALT+F11, sélec­tion­nez la feuille, touche F4 pour affich­er les propriétés :
xlSheetVeryHidden 1

6. Affinez la compréhension des formules

Voici quelques out­ils que l’on peut combiner :
— Sur une cel­lule qui con­tient un cal­cul qui utilise plusieurs cel­lules de la feuille » clic dans la barre de for­mule pour avoir un visuel sur les cel­lules con­cernées — leurs bor­dures se col­orent tout comme leurs références dans la for­mule. Mer­ci à Lau­rent J. pour la suggestion.
— Utilisez les out­ils d’au­dit, pour repér­er les antécé­dents et les dépendants.
— Affichez toutes les formules.
— Éval­uez les formules.

audit

- Une alter­na­tive plus rapi­de pour éval­uer les for­mules con­siste à sélec­tion­ner une par­tie de la for­mule et appuy­er sur F9 pour cal­culer cette sélection.
ATTENTION à ne pas valid­er cette for­mule, sinon vous allez ren­dre le fichi­er inutil­is­able. Donc utilisez la touche ECHAP au lieu d’en­trée pour sor­tir de la for­mule sans valider.
Voir aus­si ici pour une expli­ca­tion plus détail­lée.

toucheF9

- ATTENTION, si vous voyez des { } autour des for­mules, il s’ag­it de for­mules matricielles qui sont validées par CTRL+MAJ+ENTREE, donc si vous devez les éditer, sortez de la for­mule avec ECHAP, mais ne validez surtout pas avec seule­ment la touche ENTREE. Si vous devez mod­i­fi­er la for­mule, validez avec CTRL+MAJ+ENTREE.
formule-matricielle

— Con­nais­sez vos noms. Sou­vent dans des fichiers com­plex­es, de nom­breux noms ont été créés et il con­vient donc de bien les analyser.
Pour cela, utilisez le Ges­tion­naire de noms, disponible dans l’on­glet Formules :

— Utilis­er l’outil espi­on pour visu­alis­er simul­tané­ment des change­ments dans plusieurs endroits du fichier
fenetre-espion 1

Gestionnaire-de-noms 1
Vous pou­vez aus­si coller la liste des noms pour faire une analyse plus fine :
coller-liste-noms

7. Comprendre le code VBA

On pour­rait refaire une longue liste pour ce point, mais il est essen­tiel de bien com­pren­dre le code VBA du fichier.
Pour cela, utilisez les out­ils de débogage :
— Ajout d’un point d’ar­rêt en cli­quant dans la marge
vba-point-arret 1
— Déroule­ment pas à pas avec les touch­es de rac­cour­ci appropriées
VBA-pas-a-pas
— Util­i­sa­tion des espions
vba-espion 1

Et il y a encore pleins d’autres en VBA, mais ca sera pour une prochaine fois ! 

Je vous invite à com­menter pour partager votre pro­pres trouvailles :-).

A bien­tôt.

Gaë­tan

Video — Une erreur qui peut coûter très cher

filtre-copier-coller 1Bon­jour à tous,

Je décris ici une erreur qui peut coûter très cher, car pas tou­jours détectable, et avec des con­séquences poten­tielle­ment dramatiques.

En résumé, il faut éviter de copi­er-coller des don­nées dans des tables fil­trées, car même les lignes fil­trées peu­vent être impactées.

Cela vient d’ar­riv­er coup sur coup à deux de mes clients, la semaine dernière et ce matin même, donc je préfère partager l’information.

Ci-dessous, une petite vidéo de synthèse :

A bien­tôt.

Gaë­tan

Ajout d’images dans une cellule

image-donnees-table-excel
Bon­jour à tous, 

Suite à la ques­tion d’une de mes étu­di­antes sur la ges­tion d’im­ages dans une table Excel, j’avais pen­sé à cette solu­tion, mais je viens de décou­vrir une alter­na­tive assez intéres­sante (liens en anglais ici et ).

Voici donc une petite expli­ca­tion vidéo sur la réal­i­sa­tion de ce tour de passe-passe.
Voici aus­si le fichi­er avec le code VBA qui per­met d’au­toma­tis­er le processus.

Il y a beau­coup d’amélio­ra­tions pos­si­bles à ce code : ajout automa­tique des noms des images, ajout des com­men­taires dans une cel­lule à droite de la cel­lule du lien, ges­tion des pro­priétés de l’im­age, trans­for­ma­tion en macro com­plé­men­taire, etc.

N’hésitez pas à exprimer vos besoins et je ferai de mon mieux pour y répondre.

A bien­tôt.

Gaë­tan