Bonjour,
Avant de poser ma question, je vous brosse le contexte :
Je développe et maintiens un certain nombre de tableaux sous Excel 2003, et à force de recycler les mêmes bouts de code, j'ai décidé de devenir intelligent et d'en mettre un max dans un fichier XLA.
J'utilise un onglet, disons $param dans chaque classeur, je le teste pour savoir si c'est un "bon" tableau, je récupère le paramétrage et le tour est joué.
Avec ça je peux traiter des imports, exports, manipulations sur des onglets protégés comme le tri, le filtre automatique, l'insertion et la supression "propres", l'insertion d'infobulles etc.
Les fonctions sont accessibles via menu et/ou barre d'outil, ça roule, et tout ça sans une ligne de code dans le tableau automatisé. Distribution, maintance simplifiés, c'est le pied.
Sauf que pour certaines fonctions j'avais pris l'habitude d'utiliser le click droit+menu contextuel ou le double-clic. Au point de vue ergonomie, c'est quand même plus sympa que d'avoir à remonter sur l'entête chercher le bon bouton.
Ça m'obligerait à redescendre même un minimum de code dans les classeurs ; je vois à peu près comment l'automatiser mais ça n'est pas drôle.
Voici donc la question :
En fait je me demandais si avec une DLL ou quelquechose du genre on ne pourrait pas intercepter l'événement Windows (click-droit, double-click) de façon à le traiter dans le XLA.
Si l'activeworkbook est un "bon" tableau, je traite l'événement (et donc je l'intercepte définitivement comme un cancel = true) sinon je le laisse passer et il sera traité "normalement" par le classeur (éventuellement par une maccro locale).
Quelqu'un a déjà fait ou vu ca ? Ou a une idée de comment il faut faire ?
Merci d'avance.
Bevan.
Partager