macro excel pour supprimer ligne

  • Initiateur de la discussion Initiateur de la discussion Richard.RdA
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

R

Richard.RdA

Guest
bonjour,

j'ai un tableau excel de 1000 lignes et 40 colonnes
en colonne C j'ai des chifres (soit négatifs, soit nuls, soit positifs)
je voudrais une macro (à intégrer dans une autre macro que j'ai crée par Outils, macro, créer...)
qui me supprimerait toutes les lignes où la valeur de la cellule C est : nulle ou positive.


merci par avance
 
Bonjour,

Voici un bout de code qui fait ça :

Code:
Dim celsel As String
celsel = ''
For Each cellul In Range('C1:C' & Range('C56635').End(xlUp).Row)
    If cellul.Value >= 0 Then
        celsel = celsel & cellul.EntireRow.Address & ','
    End If
Next
Range(Left(celsel, Len(celsel) - 1)).Select
ActiveWindow.RangeSelection.Delete

pour info, je construis une chaine qui me sert à selectionner puis à supprimer parce que si on supprime dans la boucle for Next, on ne passe plus sur toutes les lignes

A+
 
Re : macro excel pour supprimer ligne

Bonjour à vous,

je rebondie sur le sujet pour poser une question relativement similaire

je dispose d'un fichier de 4500 lignes et qques

je souhaite filtrer ce fichier en supprimant des lignes de contact dont la profession ne correspond pas à ma recherche

la profession est indiquée dans la colonne "I"

voici la macro réalisée, ça plante : je pense que je fais une erreur dans le (ligne, colonne)

pourriez-vous m'indiquer la marche à suivre ?

merci d'avance !

Sub Filtre()

If Cells(I) = "Médical" Then
Rows.Delete
ligne = ligne - 1
End If
If Cells(I) = "Mutualité" Then
Rows.Delete
ligne = ligne - 1
End If
If Cells(I) = "Manutention" Then
Rows(ligne).Delete
ligne = ligne - 1
End If
If Cells(I) = "Musique" Then
Rows(ligne).Delete
ligne = ligne - 1
End If
If Cells(I) = "Histoire" Then
Rows(ligne).Delete
ligne = ligne - 1
End If
If Cells(I) = "Cheval" Then
Rows(ligne).Delete
ligne = ligne - 1
End If

End Sub
 
Re : macro excel pour supprimer ligne

Bonjour Mido,

Bienvenue sur XLD,

Tu as du monter haut pour rebondir maintenant sur un fil de 2005 😉

Si tu supprimes les lignes, tu ne pourras plus les réafficher, ne veux-tu pas les masquer à la place ?

Cells(ligne, colonne) attend 2 valeurs en général, le numéro de ligne et le numéro de colonne...
 
Re : macro excel pour supprimer ligne

merci à toi pour ce retour, a priori je n'ai besoin de les conserver, je peux vraiment les supprimer

tu sais pkoi ma macro n'est pas bonne ?

on m'a conseillé également une macro de forme :

dim i as integer
i=1
if range ("I"&i).value="Medical" or range ("I"&i).value="Mutualité" or etc... then
rows(i).delete
else
i=i+1
end if

ça te parait mieux ?
 
Re : macro excel pour supprimer ligne

Re,

Oui, c'est une bonne écriture ou alors

Code:
i=1
Select Case Range("I" & i).value
Case "Medical", "Mutualité", "Manutention" '....etc
Rows(i).delete
Case Else
i=i+1
End Select

Mais il faudra une boucle pour expliquer jusqu'où aller....

peut-être

Code:
[CODE]i=1
Do Until Range("I" & i).value = ""
Select Case Range("I" & i).value
Case "Medical", "Mutualité", "Manutention" '....etc
Rows(i).delete
Case Else
i=i+1
End Select
Loop
[/CODE]
 
Dernière édition:
Re : macro excel pour supprimer ligne

Hello à tous!

Je voudrais réaliser une macro qui consiste également à supprimer des lignes mais pas de la même manière. Je m'explique :

Mon fichier contient un nombre de lignes aléatoire et un nombre de colonne fixe. Le but de ma manoeuvre est de regarder dans la colonne H si deux valeurs sont identiques, si oui, alors regarder dans la colonne C si les deux valeurs sont également identiques, si oui alors supprimer une des 2 lignes.

Concrètement j'ai des doublons mais que je ne peux évidemment pas supprimer avec l'outil "supprimer les doublons" d'Excel 🙂

Quelqu'un pourrait-il m'aider?

Merci

Pour info : je ne suis pas super calée en VBA mais je peux me débrouiller.
 
Re : macro excel pour supprimer ligne

Re,

je vois que tu avais tout de même ouvert ta propre discussion :
https://www.excel-downloads.com/thr...e-contenant-pas-colonne-b-5200-lignes.179210/

Pas top la multiplication des fils.....

Bonjour Pierrot!
Je suis nouveau sur le forum et avant de trouver la manière d'ouvrir une discussion j'ai tenté différentes approches sur des discussions plus ou moins similaires.

Ce que je ne regrette pas étant donné qu j'ai ce matin différentes formules a tester.

Désolé pour le dérangement. J'espère ne pas avoir gaché ta journée.

Aurevoir
 
Re : macro excel pour supprimer ligne

Bonjour,
Moi je cherche a supprimer les lignes contenant "NP" mais la colonne peu varier entre a et z
Si qq1 peu m'orienter.
Merci
 
Dernière modification par un modérateur:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour