SAlut
Alors je n'ai jamais utilisé les mise a jour via server, mais j'emmer qd meme une hypothese, celle ci par contre utilise le OnChange de l'objet WorkSheet, c'est un code que je viens de "pondre" pour un autre topic.
Si ta valeur change tu renseignes (peut etre sur une autre page pour que se soit plus propre) la 1ere cellule vide d'une colonne, ainsi tu gardes l'historique de ta valeur,
Disons par exemple que ton info est en F8 sur la feuille Bourse
A chaque changement de valeur, tu va renseigné l'historique de cette cellule dans la colonne F (par exemple) de la feuil Histo.
Au préalable tu aura créé une étiquette dynamique (nommée Histo_F8) sur excel, celle ci pointant de la ère a la dernière cellule non vide de la colonne F feuil Histo.
Sur ta feuil bourse en F8, tu crées une validation Liste lié a l'étiquette Histo_F8.
Ainsi a chaque changement la nouvelle valeur sera présente dans la liste.
Si maintenant tu veux formater les valeurs, rien ne t'empêche de mettre une formule en colonne G qui formate tes valeurs comme tu l'entends. Bien sur ton étiquette dynamique devras pointer sur la colonne G et non plus F.
Voila un bout de code pour "l'historisation" de tes valeurs
1 2 3 4 5 6 7 8 9 10 11 12
| Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next 'pour ne pas risquer de quitter la boucle sans faire App.EnableEvents = True, sinon excel devient mué :D
'Si cela arriver, il suffit de faire une procedure avec juste la ligne Application.EnableEvents = True et de l'executer pour remettre les chose en ordre.
'Est on dans la bonne cellule?
If Not Intersect(Range("F8"), Target) Is Nothing Then 'C'est bien F8 qui provoque le change
Application.EnableEvents = False 'Permet de ne pas faire une boucle dut au changement de la cellule que l'on renseigne
sheets("Historique").Cells(Rows.Count, "F").End(xlUp).Offset(1, 0).Value = Range("F8").Value
Application.EnableEvents = True
End If
End Sub |
Pour l'etiquette dynamique (Menu Insertion -> Nom)
=DECALER(Feuil1!$F$1;0;0;NB.SI(Feuil1!$F:$F;"<>");1)
a++
Qwaz
Partager