fanabafah
Messages postés8Date d'inscriptionlundi 17 juillet 2006StatutMembreDernière intervention23 septembre 2007
-
21 sept. 2007 à 16:04
fanabafah
Messages postés8Date d'inscriptionlundi 17 juillet 2006StatutMembreDernière intervention23 septembre 2007
-
23 sept. 2007 à 12:11
Bonjour à tous,
Dans le cadre d'un projet j'ai besoin de connaitre toutes modifications effectuées sur une feuille Excel (pas la modification générale du classeur). Modification de tout objet de la feuille (image, zone de texte, cellule...). Toute aide serait vraiment la bienvenue.
fanabafah
Messages postés8Date d'inscriptionlundi 17 juillet 2006StatutMembreDernière intervention23 septembre 2007 21 sept. 2007 à 23:20
Je vais etre informer lorsqu'on desactive l'onglet de la feuille. Une petite précision: je n'ai pas forcement besoin de savoir l'objet qui a été modifié mais juste qu'il y a eu une modification sur la feuille.
Mercie d'avance
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 201823 22 sept. 2007 à 16:36
Pour les cellules, il y a l'événement Change qui te permet de savoir s'il y a des changements effectués.
Pour les divers contrôles, ceux de la barre VB ont des événements et pourraient éventuellement être suivis à partir de ces événements.
Par contre, les Shapes ou les divers contrôles de la barre de dessin ou de la barre Formulaire n'ont aucun événement associé. C'est ce qui complique la chose...
Un moyen serait peut-être de faire le tour de tous ces contrôles à l'ouverture du fichier et stocker les différentes propriétés comme le texte ou l'image... dans des variables ou un tableau, et tu refais la même chose à la fermeture en comparant.
fanabafah
Messages postés8Date d'inscriptionlundi 17 juillet 2006StatutMembreDernière intervention23 septembre 2007 22 sept. 2007 à 16:46
Effectivement je pourrai effectuer un état des contrôles avant et après pour déterminer leur statut. Mais je me dis que ca va être lourd.
Je me pose tout de même une question: comment Excel fait pour savoir si on a effectué une modification? N'y a t'il pas une fonction qui renvoie l’état de la feuille à un moment donné
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 201823 22 sept. 2007 à 17:16
Pas à ce que je sache.
Il faut faire la différence entre un classeur Excel et l'application Excel elle-même. C'est l'application qui sauvegarde et compile le fichier.
En principe, si tu ouvres un fichier et que tu ne fais pas de modification, il n'y aura pas de message de sauvegarde. Par contre, s'il y a des formules comme la date ou l'heure, il y aura forcément une modification faite et message demandant si on veut sauvegarder ... pas simple, non ?
Tu pourrais toujours créer une copie de ton classeur à l'ouverture et vérifier si la copie qui se ferme est identique à celle préalablement sauvegardée... une idée comme ça.