argaz01
Messages postés37Date d'inscriptionlundi 12 janvier 2009StatutMembreDernière intervention10 avril 2012
-
3 juin 2010 à 14:21
argaz01
Messages postés37Date d'inscriptionlundi 12 janvier 2009StatutMembreDernière intervention10 avril 2012
-
3 juin 2010 à 16:04
Bonjour,
Je viens d'élaborer une macro pour trier un tableau de 2 colonnes (SGP) et (+/-value) et faire la somme des doublons: le problème c'est que ma macro tourne sans fin (elle ne s'arrête pas tout simplement) et quand je fait echappe pour l'arrêter elle ne garde plus que les 2 premières lignes de mon tableau. Voici la macro en question:
Sub RecupColonnesVersNlleFeuille()
Dim ligne As Integer
ligne = 20
Do
If Cells(ligne, 19) Cells(ligne + 1, 19) And Cells(ligne, 20) Cells(ligne + 1, 20) Then
Cells(ligne, 21) = Cells(ligne, 21) + Cells(ligne + 1, 21)
Cells(ligne + 1, 21).EntireRow.Delete Shift:=xlUp
Else
ligne = ligne + 19
End If
Loop While Cells(ligne, 1) <> ""
End Sub
PS: le tableau commence à la ligne 18 (les titres des 2 colonnes)
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 3 juin 2010 à 15:02
Salut,
Il te manque un incrément dans ton premier if : s'il passe dans ton if, il y rentrera à chaque tour de boucle suivant, donc :
Sub RecupColonnesVersNlleFeuille()
Dim ligne As Integer
ligne = 20
Do
If Cells(ligne, 19) Cells(ligne + 1, 19) And Cells(ligne, 20) Cells(ligne + 1, 20) Then
Cells(ligne, 21) = Cells(ligne, 21) + Cells(ligne + 1, 21)
Cells(ligne + 1, 21).EntireRow.Delete Shift:=xlUp
ligne = lign + 1
Else
ligne = ligne + 19
End If
Loop While Cells(ligne, 1) <> ""
End Sub
______________________________________
AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement