Commande macro Tri par ordre alphabétique
SOFJ
-
SOFJ Messages postés 3 Date d'inscription Statut Membre Dernière intervention -
SOFJ Messages postés 3 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un petit soucis avec mon tableur (A1:M37) au niveau de la deuxième feuille.
J'ai insérer dans celle ci une première commande macro me permettant d''ajouter une ligne en-dessous automatiquement (par un double clic dans la cellule A35 (càd la dernière).
J'ai par la suite dans la plage ou je dois inscrire mes données (à savoir A5:M35), insérer une seconde commande macro me permettant par un Ctrl+w de trier par ordre croissant les lignes (ordre chronologique). Ça marche du feu de dieu, mais cela s'arrête bien à la ligne 35, et comme avec la première macro j'ai ajouté d'autres lignes et bien les nouvelles lignes restantes ne sont pas triées.
Voila le code actuel de la seconde Macro :
Voilà donc mon problème, Y aurait-il quelqu'un capable de me fournir une nouvelle commande, ou bien un moyen de faire fonctionner les deux ?
Je reste à votre disposition pour de plus amples informations si besoin est.
Cordialement.
Sofiane Jarmouni
J'ai un petit soucis avec mon tableur (A1:M37) au niveau de la deuxième feuille.
J'ai insérer dans celle ci une première commande macro me permettant d''ajouter une ligne en-dessous automatiquement (par un double clic dans la cellule A35 (càd la dernière).
Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Not Application.Intersect(Target, Range("top")) Is Nothing Then ''Macros par Jarmouni Sofiane le 22 Jan 13 Dim Lg% Lg = Range("Top").Row Application.EnableEvents = False Rows(Lg).Copy Rows(Lg).Insert Range("top").ClearContents Application.CutCopyMode = False Application.EnableEvents = True End If End Sub
J'ai par la suite dans la plage ou je dois inscrire mes données (à savoir A5:M35), insérer une seconde commande macro me permettant par un Ctrl+w de trier par ordre croissant les lignes (ordre chronologique). Ça marche du feu de dieu, mais cela s'arrête bien à la ligne 35, et comme avec la première macro j'ai ajouté d'autres lignes et bien les nouvelles lignes restantes ne sont pas triées.
Voila le code actuel de la seconde Macro :
Sub Tri() ' ''Macros par Jarmouni Sofiane le 24 Jan 13 ' Tri Macro ' Tri automatique des lignes ' ' Touche de raccourci du clavier: Ctrl+w ' Range("A5:M35").Select ActiveWindow.SmallScroll Down:=-14 ActiveWorkbook.Worksheets("Mouvement des flux").Sort.SortFields.Clear ActiveWorkbook.Worksheets("Mouvement des flux").Sort.SortFields.Add Key:= _ Range("A5"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _ xlSortNormal With ActiveWorkbook.Worksheets("Mouvement des flux").Sort .SetRange Range("A5:M35") .Header = xlNo .MatchCase = False .Orientation = xlTopToBottom
Voilà donc mon problème, Y aurait-il quelqu'un capable de me fournir une nouvelle commande, ou bien un moyen de faire fonctionner les deux ?
Je reste à votre disposition pour de plus amples informations si besoin est.
Cordialement.
Sofiane Jarmouni
A voir également:
- Tri automatique des commandes
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Réponse automatique thunderbird - Guide
- Logiciel de sauvegarde automatique gratuit - Guide
- Invite de commandes - Guide
- Comment faire un tri personnalisé sur excel - Guide
5 réponses
Bonjour,
il te suffit simplement de de rajouter a la macro (Range("A5:M65536").Select
comme ceci
Sub Tri()
'
''Macros par Jarmouni Sofiane le 24 Jan 13
' Tri Macro
' Tri automatique des lignes
'
' Touche de raccourci du clavier: Ctrl+w
'
Range("A5:M65536").Select
ActiveWindow.SmallScroll Down:=-14
ActiveWorkbook.Worksheets("Mouvement des flux").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Mouvement des flux").Sort.SortFields.Add Key:= _
Range("A5"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("Mouvement des flux").Sort
.SetRange Range("A5:M65536")
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
il te suffit simplement de de rajouter a la macro (Range("A5:M65536").Select
comme ceci
Sub Tri()
'
''Macros par Jarmouni Sofiane le 24 Jan 13
' Tri Macro
' Tri automatique des lignes
'
' Touche de raccourci du clavier: Ctrl+w
'
Range("A5:M65536").Select
ActiveWindow.SmallScroll Down:=-14
ActiveWorkbook.Worksheets("Mouvement des flux").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Mouvement des flux").Sort.SortFields.Add Key:= _
Range("A5"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("Mouvement des flux").Sort
.SetRange Range("A5:M65536")
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
Merci beaucoup, ça marche du tonnerre !
Il a simplement fallu que je reconfigure la touche de raccourci pour exécuter la macro, mais en dehors de ça nickel.
Thumbs up comme on dit ;)
Merci encore.
Il a simplement fallu que je reconfigure la touche de raccourci pour exécuter la macro, mais en dehors de ça nickel.
Thumbs up comme on dit ;)
Merci encore.
tu peut aussi faire en sorte que ton trie se fasse automatiquement a un rajout que tu fait sur ton classeur regarde ici cela est super bien expliquer
http://www.polykromy.com/blog/excel-video-f10.html
au plaisir de t'avoir aider
marc
http://www.polykromy.com/blog/excel-video-f10.html
au plaisir de t'avoir aider
marc
Ça ne marche plus!
J'ai eu la "bonne idée" d'aller modifier le titre de ma feuille, j'ai pris la précaution d'aller le modifier aussi dans le champ de la commande macro dans le VBA aussi, et il ne veut toujours pas marcher.
Voila ce qui est affiché :
Ps : Merci pour le lien ;)
J'ai eu la "bonne idée" d'aller modifier le titre de ma feuille, j'ai pris la précaution d'aller le modifier aussi dans le champ de la commande macro dans le VBA aussi, et il ne veut toujours pas marcher.
Voila ce qui est affiché :
Sub Tri()
'
''Macros par Jarmouni Sofiane le 24 Jan 13
' Tri Macro
' Tri automatique des lignes
'
' Touche de raccourci du clavier: Ctrl+w
'
Range("A5:M65536").Select <= Voilà l'erreur
ActiveWindow.SmallScroll Down:=-14
ActiveWorkbook.Worksheets("Trésorerie").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Trésorerie").Sort.SortFields.Add Key:= _
Range("A5"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("Trésorerie").Sort
.SetRange Range("A5:M65536")
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub
Ps : Merci pour le lien ;)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question