stephane.79
XLDnaute Nouveau
Bonjour à tous,
J’essaie depuis un bon moment, mais là je flanche ... et ne trouve pas de solutions sur le forum.
Via une imputbox j’aimerais réaliser des tris.
J’arrive à faire sélectionner la colonne mais pour ce qui est du « sens » du tri je bloque !
Ci joint une copie du code :
Sub Tri ()
Dim Coltri As String
Dim Typetri As String
Coltri = InputBox("Indiquer la colonne à trier ", "DONNEES TRIEES ?", "K")
Typetri = InputBox("Indiquer le type de tri Croissant = C, Décroissant = D, ...", "TYPE DE TRI ?", "D")
If Typetri = "D" Then
Typetri = "Descending"
ElseIf Typetri = "C" Then
Typetri = "Ascending"
End If
' Définition plage
Set rngPlage = Range(Range("B1"), Range("B65000").End(xlUp))
For Each C In rngPlage.Cells
If C Like "Total *" Then
C.Offset(-1, 1).Select
Range(Selection, Selection.End(xlUp).Offset(1, 15)).Select
'TRI / la colonne Sélectionnée par InputBox
'Voilà ce que je souhaiterai réaliser :
'Selection.Sort Key1:=Range("K10"), Order1:=xlDescending
'Mais avec ceci cela ne fct pas :
Selection.Sort Key1:=Range(Coltri & "10"), Order1:=xl & Typetri
End If
Next
Set rngPlage = Nothing: Set C = Nothing
End Sub
En termes d’optimisation, est-ce efficace ?
Merci d’avance pour vos réponses.
Stéphane.79
J’essaie depuis un bon moment, mais là je flanche ... et ne trouve pas de solutions sur le forum.
Via une imputbox j’aimerais réaliser des tris.
J’arrive à faire sélectionner la colonne mais pour ce qui est du « sens » du tri je bloque !
Ci joint une copie du code :
Sub Tri ()
Dim Coltri As String
Dim Typetri As String
Coltri = InputBox("Indiquer la colonne à trier ", "DONNEES TRIEES ?", "K")
Typetri = InputBox("Indiquer le type de tri Croissant = C, Décroissant = D, ...", "TYPE DE TRI ?", "D")
If Typetri = "D" Then
Typetri = "Descending"
ElseIf Typetri = "C" Then
Typetri = "Ascending"
End If
' Définition plage
Set rngPlage = Range(Range("B1"), Range("B65000").End(xlUp))
For Each C In rngPlage.Cells
If C Like "Total *" Then
C.Offset(-1, 1).Select
Range(Selection, Selection.End(xlUp).Offset(1, 15)).Select
'TRI / la colonne Sélectionnée par InputBox
'Voilà ce que je souhaiterai réaliser :
'Selection.Sort Key1:=Range("K10"), Order1:=xlDescending
'Mais avec ceci cela ne fct pas :
Selection.Sort Key1:=Range(Coltri & "10"), Order1:=xl & Typetri
End If
Next
Set rngPlage = Nothing: Set C = Nothing
End Sub
En termes d’optimisation, est-ce efficace ?
Merci d’avance pour vos réponses.
Stéphane.79