Macro pour sélectionner tableau

Résolu
mchotard Messages postés 474 Date d'inscription   Statut Membre Dernière intervention   -  
mchotard Messages postés 474 Date d'inscription   Statut Membre Dernière intervention   -

Bonjour,

J'ai cette macro qui fonctionne, mais mon problème est que si je rajoute des lignes, il ne les prend pas en compte car il ne sélectionne que les lignes de 2 à 12 mais pas au delà. Or mon tableau est susceptible de s'allonger.

Range("A1").Select
    Range(Selection, Selection.End(xlToRight)).Select
    Range(Selection, Selection.End(xlDown)).Select
    ActiveWorkbook.Worksheets("Feuil2").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Feuil2").Sort.SortFields.Add2 Key:=Range("A2:A12") _
        , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("Feuil2").Sort
        .SetRange Range("A1:G12")
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    Range("A2").Select

Merci pour votre aide

mchotard
Windows / Chrome 110.0.0.0

5 réponses

  1. cousinhub29 Messages postés 1113 Date d'inscription   Statut Membre Dernière intervention   383
     

    Bonjour,

    C'est dommage que tu ne tiennes pas compte des conseils...

    L'utilisation des Tableaux Structurés t'affranchirait de tous ces problèmes de dimension, nom, etc...

    Et si tu enregistres ta macro via l'enregistreur, et effectuant tes tris dans un TS, tu auras un code valable tout le temps...

    Bon courage


    0
  2. PHILOU10120 Messages postés 6463 Date d'inscription   Statut Contributeur Dernière intervention   835
     

    Bonjour Mochtard

    Attribuez un nom champ A1:a12 pour l'utiliser dans la macro

    Même chose pour A1:G12

    Quand vous ajoutez des lignes les insérer  avant la ligne 12

    Puis vérifier en sélectionnant le champ le nom s'affiche dans la zone à coté de la barre de formule


    0
  3. mchotard Messages postés 474 Date d'inscription   Statut Membre Dernière intervention   44
     

    Merci pour ces deux réponses. Je tiens compte des conseils, et j'utilise personnellement les tableaux structurés, mais je travaille pour une personne qui débute dans excel et il lui faut des choses simples à utiliser je dois faire avec!!.

    J'ai bien adapté les conseils de Philou10120, et j'ai un problème de débocage à .apply ?

    Désolé

    mchotard

    0
  4. ALS35 Messages postés 1034 Date d'inscription   Statut Membre Dernière intervention   147
     

    Bonjour,

    Essaie peut-être en remplaçant ton code par celui-ci :

        Range("A1").CurrentRegion.Sort key1:=Range("A1"), order1:=xlAscending, Header:=xlYes
        Range("A2").Select
    

    Cordialement

    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. mchotard Messages postés 474 Date d'inscription   Statut Membre Dernière intervention   44
     

    Formidable ALS35

    Pourquoi chercher midi à 14 h alors que c'est tout simple et ça fonctionne.

    Grand merci à vous tous.

    mchotard

    0