nicostrong
Messages postés6Date d'inscriptionvendredi 17 février 2006StatutMembreDernière intervention 7 février 2011
-
18 févr. 2006 à 15:30
cs_phBil
Messages postés17Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention29 octobre 2006
-
18 févr. 2006 à 16:52
Bonjour,
Voiçi un petit code qui permet via un bouton de trier les données d'un tableau et de les dispatcher dans deux autre feuilles.
Sachent que la première ligne est pour les titres des collones, on commence à la seconde ligne. La variable "don" est ma condition. Je n'annalyse que les 150 première lignes du tableau. Si les valleur dans les case de la 9 ème colonne sont < à ma variable don, je copie la ligne et la colle dans une feuile, même chose si la valleur est > à la variable.
Il y a moyen de faire un tri automatique à la fin de la comparaisonce qui aura pour effet de rassembler toutes les données vers le haut de la feuille et pas dicéminée dans tout le tableau.
Voilà.
Aller.
@@++
Nicostrong
Private Sub CommandButton3_Click()
Dim don
Dim ligne
don = 120
For i = 2 To 150
If Cells(i, 9) < don Then
Worksheets(2).Range("A" & i & ":K" & i).Copy
Worksheets(4).Range("A" & i).PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Else
Worksheets(2).Range("A" & i & ":K" & i).Copy
Worksheets(3).Range("A" & i).PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
End If
Next i
Worksheets(2).Range("A2").Select
End Sub
cs_phBil
Messages postés17Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention29 octobre 2006 18 févr. 2006 à 16:52
Pourquoi utilise tu i comme index de position dans feuille destination ... tu peu aussi utiliser un index par feuille destination
Private Sub CommandButton3_Click()
Dim don
Dim ligne
Dim j as integer
Dim k As integer
j = 1
k =1
don = 120
For i = 2 To 150
If Cells(i, 9) < don Then
Worksheets(2).Range("A" & i & ":K" & i).Copy
Worksheets(4).Range("A" & j ).PasteSpecial Paste: =xlPasteAll, Operation:= xlNone, SkipBlanks:= _
False, Transpose:=False
j = j +1
Else
Worksheets(2).Range("A" & i & ":K" & i).Copy
Worksheets(3).Range("A" & k).PasteSpecial Paste: =xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
k = k+1 End If
Next i
Worksheets(2).Range("A2").Select
End Sub
Phbil