Re : Coment contrôler une cellule
Pit à dit:
Votre proposition est sympa, mais je souhaitais le faire moi même.
j'ai principalement besoin de savoir comment on detecte qu'un cellule a été mise à jour. je pensais écrire des macros dans "Private Sub Worksheet", mais le pb c'est que je n'arrive pas à détecter les saisies dans les cellules.
Re...
plusieurs solutions possibles
passage en VBE
dans la fenêtre VBA - project, il y a les feuilles du classeurs
tu double-clic sur celle que tu veux surveiller
Fenêtre de droite (où on entre le code des macros)
en haut, case de gauche, avec la zone de liste déroulante (Général) tu sélectionnes Worksheet
Case de droite, tu sélectionne Change
tu vas avoir 2 macros de créée :
Worksheet_Change : elle est lancée par une modification dans la feuille
Worksheet_SelectionChange : elle est lancée par une modification de la sélection dans la feuille
Private Sub Worksheet_Change(Byval Target as range)
dim Str_Test as String '
str_test=target.address(0,0)
end sub
tu mets un point d'arrêt sur le titre de la macro (tu cliques sur la barre grise à gauche de private Sub..., un point marron apparait sur cette barre
tu retourne sur ta feuille
tu vas sur la cellule B2, et tu double-cliques dessus pour passer en édition. tu sorts en validant l'édition par enter => Excel détecte un changement et met le pointeur de macro sur la ligne de titre et attend.
le pointeur de macro est représenté par un surlignage jaune s'il n'y a pas eut de modification de couleur dans windows.
Tu mets ta souris sur Str_Test (pas ke dim str_test, le second)
avec F8, tu fais avancer le pointeur sur la ligne suivante (il saute Dim... qui est une déclaration et non une instruction)
la valeur de str_test apparaît dans une info-bulle
ou sinon, Menu Affichage>>fenêtre variables locales
tu remets le focus sur la fenêtre de code en cliquant dedans, et tu refais F8
Normalement ton curseur est sur End Sub
la valeur de Str_Test = "B2" : adresse de target qui est une variable système de type Range qui est une copie de la cellule modifiée, en lecture seule, mais qui contient toutes les propriétés de la cellule qu'elle représente :
adresse, valeur, format, etc.
tu peux faire la même chose avec selectionchange
A+
PS 2h50, je crois que c'est fini pour moi pour ce soir, je te souhaite une bonne nuit