Macro de tri avec formules

Bonjour,

J'ai utilisé une macro de tri telle que

Sub MTrierIDT()

Dim rd As Range, ra As Range
Set rd = Range("'Ind. de transport'!B6").End(xlToRight)
Set ra = Range("'Ind. de transport'!B60")

Range(rd, ra).Select

Selection.Sort Key1:=Range("C7"), Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom

End Sub

Malheureusement dans mes colonnes qui sont triées par des macros j'ai des formules. Aussi quand j'utilise mon bouton, les formules apparaissent d'abord et ensuite mon tir par ordre alphabétique. Comment faire ?

En vous remerciant pour votre aide

2 réponses

  1. Bonjour

    Est ce que ça te convient.

    https://www.cjoint.com/c/GBkqipupb1A

    Cordialent
    0
    1. Bonjour,
      Non ca ne fonctionne pas. Lorsque je saisi des formules a la place des Z celles ci ce placent en premier.
      Les formules sont des si(recherchev) qui renvoient soit à du texte ou bien à " "
      Du coup quand elles renvoient à du texte vide, les cellules vides ce placent en premier dans le tri
      0
    2. @astridBonjour
      Les formules sont des si(recherchev) qui renvoient soit à du texte ou bien à " "
      Du coup quand elles renvoient à du texte vide, les cellules vides ce placent en premier dans le tri

      -Ceci me parait normal car les cellules liées ne sont pas incluses dans le tri et du coup c'est meme "dangereux" car ça fausse complétement tes calculs.
      L'idéal ce serait d'envoyer un fichier exemple fidéle pour que l'on voit ça/
      Il ya des solutions de tri tres possible mais c'est compliqué de se lancer à l'aveuglette.

      Dans l'attente
      Cdt
      0
  2. Sub MTrierIDT()
    Application.ScreenUpdating = False

    Dim rd As Range, ra As Range
    Set rd = Range("'Ind. de transport'!B6").End(xlToRight)
    Set ra = Range("'Ind. de transport'!B60")

    Range(rd, ra).Select

    Selection.Sort Key1:=Range("C7"), Order1:=xlAscending, Header:=xlYes, _
    OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    Application.ScreenUpdating = True

    End Sub
    -1
    1. Bonjour,

      J'ai testé en rajoutant ces deux éléments ca ne change rien
      0