L
lapinou
Guest
Explication :
J'incrémente un tableau avec des valeurs sur des noms et un
classement est effectué (sur un tableau à coté) avec le
total pour chacun des noms (some classique).
J'aimerais que ce classement se mette à jour
automatiquement (sans tri) par ordre décroissant et ce à
chaque fois que des nouvelles valeurs sont rentrées dans le
tableau d'origine.
Je pense qu'il doit falloir utiliser une macro ;-)
J'ai déjà laisser un mess et on m'a répondu ceci :
1. Nommer ta plage, par exemple, «tableau»,
2. Taper Alt + F11 et coller cette macro sur la feuille
qui apparaîtra :
Sub TriAutomatique()
Set ici = Range("tableau")
Set clé = ici(1, 2)
ici.Sort Key1:=clé, Order1:=xlDescending
End Sub
3. Faire un clic droit sur ton onglet de feuille,
cliquer sur «Visualiser le code» et coller
cette macro sur la feuille qui apparaîtra :
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("tableau").Columns(2)) Is
Nothing Then
Exit Sub
Else
Call TriAutomatique
End If
End Sub
Ce que j'ai fais mais lorsque j'éxécute la macro seul les
noms bouge et c'est très aléatoire !!!
Merci d'avance pour votre aide ;-)
Si besoin je peux envoyer le fichier.
Tchao
J'incrémente un tableau avec des valeurs sur des noms et un
classement est effectué (sur un tableau à coté) avec le
total pour chacun des noms (some classique).
J'aimerais que ce classement se mette à jour
automatiquement (sans tri) par ordre décroissant et ce à
chaque fois que des nouvelles valeurs sont rentrées dans le
tableau d'origine.
Je pense qu'il doit falloir utiliser une macro ;-)
J'ai déjà laisser un mess et on m'a répondu ceci :
1. Nommer ta plage, par exemple, «tableau»,
2. Taper Alt + F11 et coller cette macro sur la feuille
qui apparaîtra :
Sub TriAutomatique()
Set ici = Range("tableau")
Set clé = ici(1, 2)
ici.Sort Key1:=clé, Order1:=xlDescending
End Sub
3. Faire un clic droit sur ton onglet de feuille,
cliquer sur «Visualiser le code» et coller
cette macro sur la feuille qui apparaîtra :
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("tableau").Columns(2)) Is
Nothing Then
Exit Sub
Else
Call TriAutomatique
End If
End Sub
Ce que j'ai fais mais lorsque j'éxécute la macro seul les
noms bouge et c'est très aléatoire !!!
Merci d'avance pour votre aide ;-)
Si besoin je peux envoyer le fichier.
Tchao