OVH Cloud OVH Cloud

MACRO he oui encore moi

26 réponses
Avatar
alain.bazire
TOUJOURS MON PROBLEME DE TRI.
Range("H2:O2").Select
Selection.Sort Key1:=Range("H2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal c'est ma mini macro je desirerais qu'elle
trie de gauche à droite jusquà la ligne 40000 . Merci d'avance . Amitiées.
Alaiun

10 réponses

1 2 3
Avatar
LeSteph
bonsoir...

"" a
écrit dans le message de news:

TOUJOURS MON PROBLEME DE TRI.
Range("H2:O2").Select
Selection.Sort Key1:=Range("H2"), Order1:=xlAscending, Header:=xlGuess,
_
OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal c'est ma mini macro je desirerais qu'elle
trie de gauche à droite jusquà la ligne 40000 . Merci d'avance . Amitiées.
Alaiun


Avatar
LeSteph
...donc c'est mieux en remplaçant 2 par 40000.
Range("H2:O40000").Select
...

lSteph

"" a
écrit dans le message de news:

TOUJOURS MON PROBLEME DE TRI.
Range("H2:O2").Select
Selection.Sort Key1:=Range("H2"), Order1:=xlAscending, Header:=xlGuess,
_
OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal c'est ma mini macro je desirerais qu'elle
trie de gauche à droite jusquà la ligne 40000 . Merci d'avance . Amitiées.
Alaiun


Avatar
michdenis
Bonjour Alain,

Dans un module standard, copie le code suivant (les 2 procédures)
et exécute la macro TriHorizontal() .

ATTENTION : prend soin de modifier le nom de la feuille
selon le nom de la feuille de ton application dans la
procédure TriHorizontal avant de la lancer :
ligne de code :

With Worksheets("Feuil1")


'---------------------------------------
Sub TriHorizontal()

Dim Plage As Range
With Worksheets("Feuil1")
Set Plage = .Range("H2:O" & .Columns("H:O").Find _
(What:="*", SearchDirection:=xlPrevious, _
SearchOrder:=xlByRows).Row)
End With

Application.EnableEvents = False
Application.ScreenUpdating = False
TriExecution Plage
Application.EnableEvents = True
Set Plage = Nothing
End Sub

'---------------------------------------
Sub TriExecution(Rg As Range)
Dim R As Range
Dim A As Long
For Each R In Rg.Rows
A = A + 1
R.Sort Key1:=Rg(A, 1), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
Next
Set Rg = Nothing

End Sub
'---------------------------------------


Salutations!





"" a écrit dans le message de
news:
TOUJOURS MON PROBLEME DE TRI.
Range("H2:O2").Select
Selection.Sort Key1:=Range("H2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal c'est ma mini macro je desirerais qu'elle
trie de gauche à droite jusquà la ligne 40000 . Merci d'avance . Amitiées.
Alaiun
Avatar
alain.bazire
Oui excuses pour mon impolitesse toutes mes excuses Désolé je ne
recommencerais plus promis. Amicalement .Alain


bonsoir...

"" a
écrit dans le message de news:

TOUJOURS MON PROBLEME DE TRI.
Range("H2:O2").Select
Selection.Sort Key1:=Range("H2"), Order1:=xlAscending, Header:=xlGuess,
_
OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal c'est ma mini macro je desirerais qu'elle
trie de gauche à droite jusquà la ligne 40000 . Merci d'avance . Amitiées.
Alaiun







Avatar
alain.bazire
Rebonsoir oui c'est mieux si je mets 40000 mais ensuite que dois je faire
STP. Une macro surement mais je suis trop nul pour la faire moi meme si tu as
une idée?D'avance merci. Cordialement Alain


....donc c'est mieux en remplaçant 2 par 40000.
Range("H2:O40000").Select
....

lSteph

"" a
écrit dans le message de news:

TOUJOURS MON PROBLEME DE TRI.
Range("H2:O2").Select
Selection.Sort Key1:=Range("H2"), Order1:=xlAscending, Header:=xlGuess,
_
OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal c'est ma mini macro je desirerais qu'elle
trie de gauche à droite jusquà la ligne 40000 . Merci d'avance . Amitiées.
Alaiun







Avatar
alain.bazire
Bonsoir. Je te remercie de m'avoir accordé de ton temps. Il est tard et
demain matin j'essaie cette macro sur laquelle je suis depuis avant hier soir
et qui m'ennuie mais c'est ainsi que l'on apprend . Je te dirais demain si
cela fonctionne. Je te remercie. Cordialement .Alain


Bonjour Alain,

Dans un module standard, copie le code suivant (les 2 procédures)
et exécute la macro TriHorizontal() .

ATTENTION : prend soin de modifier le nom de la feuille
selon le nom de la feuille de ton application dans la
procédure TriHorizontal avant de la lancer :
ligne de code :

With Worksheets("Feuil1")


'---------------------------------------
Sub TriHorizontal()

Dim Plage As Range
With Worksheets("Feuil1")
Set Plage = .Range("H2:O" & .Columns("H:O").Find _
(What:="*", SearchDirection:=xlPrevious, _
SearchOrder:=xlByRows).Row)
End With

Application.EnableEvents = False
Application.ScreenUpdating = False
TriExecution Plage
Application.EnableEvents = True
Set Plage = Nothing
End Sub

'---------------------------------------
Sub TriExecution(Rg As Range)
Dim R As Range
Dim A As Long
For Each R In Rg.Rows
A = A + 1
R.Sort Key1:=Rg(A, 1), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
Next
Set Rg = Nothing

End Sub
'---------------------------------------


Salutations!





"" a écrit dans le message de
news:
TOUJOURS MON PROBLEME DE TRI.
Range("H2:O2").Select
Selection.Sort Key1:=Range("H2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal c'est ma mini macro je desirerais qu'elle
trie de gauche à droite jusquà la ligne 40000 . Merci d'avance . Amitiées.
Alaiun





Avatar
alain.bazire
Rebonsoir. Fautil que j'appelle ma feuille " Withworksheets("Feuil1") "
Merci encore . Alain


Bonjour Alain,

Dans un module standard, copie le code suivant (les 2 procédures)
et exécute la macro TriHorizontal() .

ATTENTION : prend soin de modifier le nom de la feuille
selon le nom de la feuille de ton application dans la
procédure TriHorizontal avant de la lancer :
ligne de code :

With Worksheets("Feuil1")


'---------------------------------------
Sub TriHorizontal()

Dim Plage As Range
With Worksheets("Feuil1")
Set Plage = .Range("H2:O" & .Columns("H:O").Find _
(What:="*", SearchDirection:=xlPrevious, _
SearchOrder:=xlByRows).Row)
End With

Application.EnableEvents = False
Application.ScreenUpdating = False
TriExecution Plage
Application.EnableEvents = True
Set Plage = Nothing
End Sub

'---------------------------------------
Sub TriExecution(Rg As Range)
Dim R As Range
Dim A As Long
For Each R In Rg.Rows
A = A + 1
R.Sort Key1:=Rg(A, 1), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
Next
Set Rg = Nothing

End Sub
'---------------------------------------


Salutations!





"" a écrit dans le message de
news:
TOUJOURS MON PROBLEME DE TRI.
Range("H2:O2").Select
Selection.Sort Key1:=Range("H2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal c'est ma mini macro je desirerais qu'elle
trie de gauche à droite jusquà la ligne 40000 . Merci d'avance . Amitiées.
Alaiun





Avatar
michdenis
Remplace seulement "Feuil1" dans la procédure par le nom de l'onglet de ta feuille où tu dois appliquer le tri.

P.S. Si tu veux appliquer le tri sur une autre plage de données que celle spécifiée dans ta question, modifie cette ligne de
code
Set Plage = .Range("H2:O" & .Columns("H:O").Find _


Salutations!


"" a écrit dans le message de
news:
Rebonsoir. Fautil que j'appelle ma feuille " Withworksheets("Feuil1") "
Merci encore . Alain


Bonjour Alain,

Dans un module standard, copie le code suivant (les 2 procédures)
et exécute la macro TriHorizontal() .

ATTENTION : prend soin de modifier le nom de la feuille
selon le nom de la feuille de ton application dans la
procédure TriHorizontal avant de la lancer :
ligne de code :

With Worksheets("Feuil1")


'---------------------------------------
Sub TriHorizontal()

Dim Plage As Range
With Worksheets("Feuil1")
Set Plage = .Range("H2:O" & .Columns("H:O").Find _
(What:="*", SearchDirection:=xlPrevious, _
SearchOrder:=xlByRows).Row)
End With

Application.EnableEvents = False
Application.ScreenUpdating = False
TriExecution Plage
Application.EnableEvents = True
Set Plage = Nothing
End Sub

'---------------------------------------
Sub TriExecution(Rg As Range)
Dim R As Range
Dim A As Long
For Each R In Rg.Rows
A = A + 1
R.Sort Key1:=Rg(A, 1), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
Next
Set Rg = Nothing

End Sub
'---------------------------------------


Salutations!





"" a écrit dans le message de
news:
TOUJOURS MON PROBLEME DE TRI.
Range("H2:O2").Select
Selection.Sort Key1:=Range("H2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal c'est ma mini macro je desirerais qu'elle
trie de gauche à droite jusquà la ligne 40000 . Merci d'avance . Amitiées.
Alaiun





Avatar
alain.bazire
Bonjour. J'ai ecrit ce que tu mas dit c'est à dire cela Set Plage =
.Range("H2:O" & .Columns("H:O").Find(What:="*", SearchDirection:=xlPrevious,
SearchOrder:=xlByRows).Row) et je me suis apercu,parceque cela ne donnait
rien que si je mettais H70 à la place de H2 dans cette phrase ca me trie la
ligne 69 et c'est tout. Un petit arrangement devrais faire fonctionner cette
superbe macro .Stp merci tu y es presque . Cordialement . Alain


Remplace seulement "Feuil1" dans la procédure par le nom de l'onglet de ta feuille où tu dois appliquer le tri.

P.S. Si tu veux appliquer le tri sur une autre plage de données que celle spécifiée dans ta question, modifie cette ligne de
code
Set Plage = .Range("H2:O" & .Columns("H:O").Find _


Salutations!


"" a écrit dans le message de
news:
Rebonsoir. Fautil que j'appelle ma feuille " Withworksheets("Feuil1") "
Merci encore . Alain


Bonjour Alain,

Dans un module standard, copie le code suivant (les 2 procédures)
et exécute la macro TriHorizontal() .

ATTENTION : prend soin de modifier le nom de la feuille
selon le nom de la feuille de ton application dans la
procédure TriHorizontal avant de la lancer :
ligne de code :

With Worksheets("Feuil1")


'---------------------------------------
Sub TriHorizontal()

Dim Plage As Range
With Worksheets("Feuil1")
Set Plage = .Range("H2:O" & .Columns("H:O").Find _
(What:="*", SearchDirection:=xlPrevious, _
SearchOrder:=xlByRows).Row)
End With

Application.EnableEvents = False
Application.ScreenUpdating = False
TriExecution Plage
Application.EnableEvents = True
Set Plage = Nothing
End Sub

'---------------------------------------
Sub TriExecution(Rg As Range)
Dim R As Range
Dim A As Long
For Each R In Rg.Rows
A = A + 1
R.Sort Key1:=Rg(A, 1), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
Next
Set Rg = Nothing

End Sub
'---------------------------------------


Salutations!





"" a écrit dans le message de
news:
TOUJOURS MON PROBLEME DE TRI.
Range("H2:O2").Select
Selection.Sort Key1:=Range("H2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal c'est ma mini macro je desirerais qu'elle
trie de gauche à droite jusquà la ligne 40000 . Merci d'avance . Amitiées.
Alaiun










Avatar
alain.bazire
Rebonjour. Aufait data option1:=xlSort normal il ne le prends pas il marque
"erreur de compilation" et dessous "Attendu expression" peut etre pour cela
que ca marche pas car je l'ai enlevé de la macro. Merci. Cordialement Alain


Remplace seulement "Feuil1" dans la procédure par le nom de l'onglet de ta feuille où tu dois appliquer le tri.

P.S. Si tu veux appliquer le tri sur une autre plage de données que celle spécifiée dans ta question, modifie cette ligne de
code
Set Plage = .Range("H2:O" & .Columns("H:O").Find _


Salutations!


"" a écrit dans le message de
news:
Rebonsoir. Fautil que j'appelle ma feuille " Withworksheets("Feuil1") "
Merci encore . Alain


Bonjour Alain,

Dans un module standard, copie le code suivant (les 2 procédures)
et exécute la macro TriHorizontal() .

ATTENTION : prend soin de modifier le nom de la feuille
selon le nom de la feuille de ton application dans la
procédure TriHorizontal avant de la lancer :
ligne de code :

With Worksheets("Feuil1")


'---------------------------------------
Sub TriHorizontal()

Dim Plage As Range
With Worksheets("Feuil1")
Set Plage = .Range("H2:O" & .Columns("H:O").Find _
(What:="*", SearchDirection:=xlPrevious, _
SearchOrder:=xlByRows).Row)
End With

Application.EnableEvents = False
Application.ScreenUpdating = False
TriExecution Plage
Application.EnableEvents = True
Set Plage = Nothing
End Sub

'---------------------------------------
Sub TriExecution(Rg As Range)
Dim R As Range
Dim A As Long
For Each R In Rg.Rows
A = A + 1
R.Sort Key1:=Rg(A, 1), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal
Next
Set Rg = Nothing

End Sub
'---------------------------------------


Salutations!





"" a écrit dans le message de
news:
TOUJOURS MON PROBLEME DE TRI.
Range("H2:O2").Select
Selection.Sort Key1:=Range("H2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlLeftToRight, _
DataOption1:=xlSortNormal c'est ma mini macro je desirerais qu'elle
trie de gauche à droite jusquà la ligne 40000 . Merci d'avance . Amitiées.
Alaiun










1 2 3