Microsoft 365 VBA: fonction pour désélectionner après le tri

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

VBA_dev_Anne_Marie

XLDnaute Occasionnel
Bonjour,

Je n'arrive pas à désélectionner la plage après le tri.
Voici mon code :
VB:
Sub Tri()
    Dim FinTri As Integer
    With Sheets("BDD")
    FinTri = .Range("D" & .Rows.Count).End(xlUp).Row
    Application.CutCopyMode = False
    End With
    Sheets("BDD").Range("D11:G" & FinTri).Select
    Selection.Sort Key1:=Range("D11"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
 
End Sub

J'ai essayé de placer à la fin Application.CutCopyMode = False mais cela ne marche.
J'ai essayé aussi de resélectionner, Sheets("BDD").Range("D11:G" & FinTri).Select, pour enlever la sélection, cela ne marche pas non plus.

Merci pour votre aide !
 
Solution
Bonjour Anne Marie,
Essayez comme en PJ :
VB:
Sub Tri()
    Dim FinTri As Integer
    With Sheets("BDD")
    FinTri = .Range("D" & .Rows.Count).End(xlUp).Row
    Application.CutCopyMode = False
    End With
    Sheets("BDD").Range("D11:G" & FinTri).Select
    Selection.Sort Key1:=Range("D11"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
    [A1].Select
End Sub
[A1], pour les fainéants, c'est Range("A1") 😅
Bonjour Anne Marie,
Essayez comme en PJ :
VB:
Sub Tri()
    Dim FinTri As Integer
    With Sheets("BDD")
    FinTri = .Range("D" & .Rows.Count).End(xlUp).Row
    Application.CutCopyMode = False
    End With
    Sheets("BDD").Range("D11:G" & FinTri).Select
    Selection.Sort Key1:=Range("D11"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
    [A1].Select
End Sub
[A1], pour les fainéants, c'est Range("A1") 😅
 

Pièces jointes

Bonjour Anne Marie,
Essayez comme en PJ :
VB:
Sub Tri()
    Dim FinTri As Integer
    With Sheets("BDD")
    FinTri = .Range("D" & .Rows.Count).End(xlUp).Row
    Application.CutCopyMode = False
    End With
    Sheets("BDD").Range("D11:G" & FinTri).Select
    Selection.Sort Key1:=Range("D11"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
    [A1].Select
End Sub
[A1], pour les fainéants, c'est Range("A1") 😅
Merci Sylvanu !
Le code marche très bien !
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
17
Affichages
934
Réponses
6
Affichages
950
Réponses
1
Affichages
662
  • Question Question
Microsoft 365 colorer une plage
Réponses
2
Affichages
843
Retour