trie

M

matou59

Guest
Bonsoir,

En excel 2000, une base de donnees ou chaque ligne comporte 4 colonnes (A1:DXXX).Ou XXX peut aller jusqu'a 999.
Cette base de donnees doit toujours etre triee avec comme critere de trie la colonne A.
Donc a chaque fois que l'on ajoute une ligne celle ci doit venir se placer
dans la base comme si on faisait le trie de la base a chaque ajout de ligne...
Comment faire cela ?
merci de votre reponse.

Joyeux Noel a TOUS....
 
C

CBernardT

Guest
Bonsoir Matou

Un essai de réponse : la macro de tri est placée dans le module de la feuille "ESSAI" :

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("A1:D999")) Is Nothing Then
Range("A1:D999").Sort Key1:=Range("A1"), Order1:=xlAscending
End If
End Sub

Cependant, pour que tout changement dans la zone "A1:D999" entraîne un tri sans avoir à chercher la ligne pour la compléter, il est indispensable que les quatre valeurs d'une ligne soient collées en même temps.

Cordialement

CBernardT
 

Pièces jointes

  • Trierzone.zip
    7.4 KB · Affichages: 18
M

matou59

Guest
bonjour et merci cbernardt,

Comme tu le disais le seul prob dans ce cas c que lorsque je rempli la cellule de la colonne A et que je passe a la cellule de la colonne B, l'enregistrement est deja fait et le tri aussi.A la limite dans mon cas il faudrait que je remplisse la colonne A en dernier et ainsi j'aurai pu remplir toutes les zones de mon enregistrement.
Par contre la macro que tu as faite, je ne la trouve nul part dans ton exemple ?.

merci d'avoir bien voulu m'aider.
 
C

CBernardT

Guest
Bonjour Matou et le forum

Un palliatif pour qu'il ne soit pas indispensable que les quatre valeurs d'une même ligne soient collées en même temps est que les changements ne soient pris en compte que sur la colonne "D".

La macro devient :

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("D1:D999")) Is Nothing Then
Range("A1:D999").Sort Key1:=Range("A1"), Order1:=xlAscending
End If
End Sub


Cordialement

CBernardT
 
M

matou59

Guest
Bonjour,

Merci d'avoir bien voulu m'aider car je ne suis pas expert en la matiere.
A propos de VBE, que je ne connais pas bien du tout, ou puis je trouver une documentation claire pour apprendre pas a pas et quelle est son nom si je dois aller l'acheter en librairie.

Merci encore et à l'occasion sur ce site.

Joyeux Noel

Cordialement
 

Discussions similaires

Statistiques des forums

Discussions
312 495
Messages
2 088 966
Membres
103 993
dernier inscrit
Essens