Exel trie
vogpat
-
necro27 Messages postés 125 Date d'inscription Statut Membre Dernière intervention -
necro27 Messages postés 125 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je voudrais réaliser une macro pour trier, j'ai 3000 ligne de données avec pour chaque ligne un code (ex: 11196) et je souhaiterai en garder 300.
J'ai réalisé cet macro :
Sub supprimer()
Dim i As Double
Worksheets(1).Select
i = 2
Application.ScreenUpdating = False
Do While Cells(i, 1) <> 0
If Not (Cells(i, 1) = " " ) Then
Cells(i, 1).EntireRow.Delete
Else
i = i + 1
End If
Loop
Application.ScreenUpdating = True
End Sub
mais je ne peux mettre (cell(i,1)="" or cell(i,1)="") pour les 300 lignes que je veux garder .
Comment faire pour garder les 300 lignes?
Merci
Je voudrais réaliser une macro pour trier, j'ai 3000 ligne de données avec pour chaque ligne un code (ex: 11196) et je souhaiterai en garder 300.
J'ai réalisé cet macro :
Sub supprimer()
Dim i As Double
Worksheets(1).Select
i = 2
Application.ScreenUpdating = False
Do While Cells(i, 1) <> 0
If Not (Cells(i, 1) = " " ) Then
Cells(i, 1).EntireRow.Delete
Else
i = i + 1
End If
Loop
Application.ScreenUpdating = True
End Sub
mais je ne peux mettre (cell(i,1)="" or cell(i,1)="") pour les 300 lignes que je veux garder .
Comment faire pour garder les 300 lignes?
Merci
Configuration: Windows XP Internet Explorer 7.0
9 réponses
-
Salut vogbat,
Je ne suis pa un expert mais je propose
A tu essayer d'ajouter un compteur de ligne?
ex :
Do While Cells(i, 1) <> 0 and numligne < 301
<code>
loop
do while cells(numligne,1)<>0
<selection + supression>
loop
di moi ce que tu en pense
Necro27 -
euh..ce sont bien les 300 premières lignes que tu veux garder?
-
-
Bonjour,
Désolé pas pu repondre plus tôt
Quels sont tes critères de sélection afin de définir les 300 lignes à garder?
Veux tu effectuer un tri par odre croissant de ta colonne puis en ressortir les 300 premières lignes?
N'hésite pas à donner des détails si tu n'as pas trouvé la solution depuis ier
Necro27 -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
-
Ok,
Tu met un compteur pour déterminer le nombre de lignes , tant que ton compteur est inférieur à 300 tu continu.
En condition, tu n'as juste à mettre un 'if' pour filtrer ta recherche..
Dans ton exemple :
if cells(ligne,colonne)= 5 and cells(ligne,colonne) = 10 then
[code]
end if
Si tes valeurs sont variables, tu les fais saisir par un utilisateur par un inputbox. -
J'ai déjà fais ça mais j'en ai 300 à sélectionner sur 3000 donc suivant ta logique je devrais faire cells(ligne, colonne) =" " pour les 300 que je veux mais au bout de 50 vba bloque
-
il bloque au bout de 50 lignes?
peux tu me montrer ton code si tu la modifié depuis ton premier message.
j'ai eu un problème similaire dernièrement... -
j'ai une idée
tu marque
Do While Cells(i, 1) <> 0
[...]
Loop
essai pluto
while cells(2,1) <> 0
[...]
activecell.offset(1,0).activate
wend