Déplacer en fin de tableau si
Résolu
Viking58
Messages postés
186
Statut
Membre
-
Viking58 Messages postés 186 Statut Membre -
Viking58 Messages postés 186 Statut Membre -
Bonsoir à toutes et tous.
Je voudrais une macro pour un bouton:
Dans ma colonne A:
1) Que tout ce qui n'est pas une date se retrouve en bas de tableau.
(après les dates)
2) Effectuer un tri sur cette colonne de la date la plus ancienne à la plus récente.
(Comme un tri A-Z)
Merci.
Bonne semaine.
Je voudrais une macro pour un bouton:
Dans ma colonne A:
1) Que tout ce qui n'est pas une date se retrouve en bas de tableau.
(après les dates)
2) Effectuer un tri sur cette colonne de la date la plus ancienne à la plus récente.
(Comme un tri A-Z)
Merci.
Bonne semaine.
A voir également:
- Déplacer en fin de tableau si
- Tableau word - Guide
- Déplacer colonne excel - Guide
- Tableau ascii - Guide
- Fin des zfe - Guide
- Trier un tableau excel - Guide
2 réponses
Bonjour,
En supposant qu'il s'agit d'un tableau multi-colonnes avec des titres de colonnes, essaies ce code
En supposant qu'il s'agit d'un tableau multi-colonnes avec des titres de colonnes, essaies ce code
Sub TriSpécial()
Dim t() As Variant
Dim r As Range
Dim c As Long
Dim i As Long
Set r = Range("A1").CurrentRegion
c = r.Columns.Count
r.Resize(, 2).Offset(0, c).Clear
t = Application.Transpose(r.Columns(1).Value)
For i = LBound(t) + 1 To UBound(t)
If IsDate(t(i)) Then
r(i, c).Offset(0, 1).FormulaLocal = t(i)
Else
r(i, c).Offset(0, 1).Value = ""
r(i, c).Offset(0, 2).NumberFormat = r(i, 1).NumberFormat
r(i, c).Offset(0, 2).FormulaLocal = r(i, 1).FormulaLocal
End If
Next
Set r = Range("A1").CurrentRegion
r.Sort Key1:=r(1, c + 1), Order1:=xlAscending, _
Key2:=r(1, c + 2), Order2:=xlAscending, _
Header:=xlYes
r.Resize(, 2).Offset(0, c).Clear
End Sub
Excel me renvoie une erreur "Erreur d'exécution 1004", référence de tri non valide:
sur ces lignes:
r.Sort Key1:=r(1, c + 1), Order1:=xlAscending, _
Key2:=r(1, c + 2), Order2:=xlAscending, _
Header:=xlYes
ajoutes avant le r.sort :
MsgBox r.Address