Tri par comparaison
DGVDR
-
Heliotte Messages postés 1561 Statut Membre -
Heliotte Messages postés 1561 Statut Membre -
Bonjour,
Je sollicite de nouveau votre aide,
Je cherche à comparer des cases deux à deux et de passer la ligne contenant la case à la valeur supérieur en dessous de celle qui à la valeur inférieur.
Mon code :
C'est la ligne "
Merci pour votre aide,
DGVDR
Je sollicite de nouveau votre aide,
Je cherche à comparer des cases deux à deux et de passer la ligne contenant la case à la valeur supérieur en dessous de celle qui à la valeur inférieur.
Mon code :
Sub tri()
Dim n As Integer
Dim o As Integer
With Worksheets("Enregistrements interventions")
For n = 5 To 150
For o = 1 To 150
If .Range("F" & n).Value > .Range("F" & n + o) Then
.Rows(n).Cut
.Rows(n + o).Insert Shift:=xlDown
End If
Next
Next
End With
End Sub
C'est la ligne "
.Rows(n + o).Insert Shift:=xlDown" qui pose problème.
Merci pour votre aide,
DGVDR
A voir également:
- Tri par comparaison
- Comment faire un tri personnalisé sur excel - Guide
- Comparaison million milliard - Accueil - Technologies
- Logiciel tri photo - Guide
- Logiciel comparaison photo gratuit - Télécharger - Photo & Graphisme
- Peut on récupérer un colis au centre de tri chronopost - Forum Mobile
8 réponses
Ça fonctionne.
En début de feuille = Option Explicit
Pour plus d'assurance : If .Range("F" & n).Value > .Range("F" & n + o).Value Then
Ceci .Rows(n + o).Insert Shift:=xlDown
ou cela .Rows(NoLigne + o & ":" & NoLigne + o).Select
Selection.Insert Shift:=xlDown fonctionne
En début de feuille = Option Explicit
Pour plus d'assurance : If .Range("F" & n).Value > .Range("F" & n + o).Value Then
Ceci .Rows(n + o).Insert Shift:=xlDown
ou cela .Rows(NoLigne + o & ":" & NoLigne + o).Select
Selection.Insert Shift:=xlDown fonctionne
Bonjour Heliotte,
Merci pour cette réponse,
Ceci dit, ca ne marche pas chez moi...
Mon code actuel :
C'est toujours la ligne " .Rows(n + o).Insert Shift:=xlUp" qui pose problème
Cette ligne ayant pour but de m'insérer la ligne couper par
Je ne trouve pas l'erreur... ( erreur 1004 )
Merci,
DGVDR
Merci pour cette réponse,
Ceci dit, ca ne marche pas chez moi...
Mon code actuel :
Option Explicit
Sub tri()
Dim n As Integer
Dim o As Integer
With Worksheets("Enregistrements interventions")
For n = 5 To 150
For o = 1 To 150
If .Range("F" & n).Value > .Range("F" & n + o) Then
.Rows(n).Cut
.Rows(n + o).Insert Shift:=xlUp
End If
Next o
Next n
End With
End Sub
C'est toujours la ligne " .Rows(n + o).Insert Shift:=xlUp" qui pose problème
Cette ligne ayant pour but de m'insérer la ligne couper par
.Rows(n).Cuten dessous de la ligne à l'indice (n+o)...
Je ne trouve pas l'erreur... ( erreur 1004 )
Merci,
DGVDR
Bonjour DGVDR,
.Rows(n).Cut coupe la ligne(n)
.Rows(n + o).Insert Shift:=xlUp insère une ligne à la ligne (n+o), puis colle ce que tu viens de couper
Quelle est la version d'Excel .. j'ai Excel 2003
.Rows(n).Cut coupe la ligne(n)
.Rows(n + o).Insert Shift:=xlUp insère une ligne à la ligne (n+o), puis colle ce que tu viens de couper
Quelle est la version d'Excel .. j'ai Excel 2003
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour DGVDR,
Je ne pourrais pas mieux t'aider, je n'ai que la version 2003 .. désolé
Tu peux essayer avec l'enregistreur de macro en Excel .. après tu modifies le code à ta façon.
Je ne pourrais pas mieux t'aider, je n'ai que la version 2003 .. désolé
Tu peux essayer avec l'enregistreur de macro en Excel .. après tu modifies le code à ta façon.