Vba excel pour effacer des cellules colorées
bizoo
-
bizoo -
bizoo -
Bonjour,
Je cherche à faire une petite macro pour effacer des colorées ( je suis débutant vba :) ) . En fait, j'ai d'abord utilisé la mise en forme conditionnel valeurs en double ( excel 2007 ) ce qui m'a colorié tous les doublons. Le fichier contient presque 10 000 données, je souhaite donc faire une macro pour effacer tous les doublons . La macro est simple puisque il s'agit simplement de balayer la premiére colonne et d'effacer la ligne entiere lorsque la cellule a été colorée par la mise en forme conditionnel. J’ai fait un test avec cette boucle :
Sub Test_color()
For ligne = 30 To 2 Step -1
Set cellule = Sheets("feuil1").Cells(ligne, 1)
If cellule.Interior.ColorIndex <> xlNone Then cellule.EntireRow.Delete
Next
End Sub
Le problème est qu’Excel m’efface toutes les lignes, il ne va pas chercher seulement les cellules colorées.
Merci d'avance pour votre aide
Je cherche à faire une petite macro pour effacer des colorées ( je suis débutant vba :) ) . En fait, j'ai d'abord utilisé la mise en forme conditionnel valeurs en double ( excel 2007 ) ce qui m'a colorié tous les doublons. Le fichier contient presque 10 000 données, je souhaite donc faire une macro pour effacer tous les doublons . La macro est simple puisque il s'agit simplement de balayer la premiére colonne et d'effacer la ligne entiere lorsque la cellule a été colorée par la mise en forme conditionnel. J’ai fait un test avec cette boucle :
Sub Test_color()
For ligne = 30 To 2 Step -1
Set cellule = Sheets("feuil1").Cells(ligne, 1)
If cellule.Interior.ColorIndex <> xlNone Then cellule.EntireRow.Delete
Next
End Sub
Le problème est qu’Excel m’efface toutes les lignes, il ne va pas chercher seulement les cellules colorées.
Merci d'avance pour votre aide
A voir également:
- Vba excel pour effacer des cellules colorées
- Verrouiller des cellules excel - Guide
- Liste déroulante excel - Guide
- Excel additionner plusieurs cellules - Guide
- Word et excel gratuit - Guide
- Excel compter cellule couleur sans vba - Guide
5 réponses
bonjour
sans t'occuper des MFC qui sont la conséquences des doublons que tu cherche à éliminner: on s'attaque donc aux doublons (tableau sur 1 colonne A)
essaies (réalisée ss XL<2007)
sans t'occuper des MFC qui sont la conséquences des doublons que tu cherche à éliminner: on s'attaque donc aux doublons (tableau sur 1 colonne A)
essaies (réalisée ss XL<2007)
Sub epurer()
Dim triage As Collection
Dim nbre As Long, cptr As Long
'ActiveSheet.Unprotect
Application.ScreenUpdating = False
nbre = Application.CountA(Range("A:A"))
Set triage = New Collection
On Error Resume Next
cptr = 1
While cptr <= nbre
'le parametre Key devant être unique, un doublon provoquerait une erreur _
le gestionnaire étant activé, Tonton Vba ignore l'erreur et passe à la cellule suivante _
s'il n'y a pas pas d'erreur le numéro d'item de la collection triage est alors implémenté
triage.Add Cells(cptr, 1).Value, CStr(Cells(cptr, 1).Value)
cptr = cptr + 1
Wend
On Error GoTo 0
nbre = triage.Count
' Ecrit la zone épurée (ici dans des cellules mais peut-etre adapté à des listbox et combobox)
Range("A:A").ClearContents
cptr = 1
While cptr <= nbre
Cells(cptr, 1) = triage(cptr)
cptr = cptr + 1
Wend
'ActiveSheet.Protect
'libère le pointeur
set triage= nothing
End Sub
Bonjour, comment va Michel ?
bizoo : Pour ton info,
Les couleurs d'une MFC ne sont pas "visble" façilement.
pour les détecter tu peu t'inspirer
de ce lien, couleur MFC
A+
bizoo : Pour ton info,
Les couleurs d'une MFC ne sont pas "visble" façilement.
pour les détecter tu peu t'inspirer
de ce lien, couleur MFC
A+
Je viens d'essayer, marche niquel, par contre juste une question, je voudrais que lorsque que le macro efface le doublon elle efface toute la ligne avec, seulement votre macro est un peu compliqué pour moi, je sais pas ou mettre le : cellule.entirerow.delete
merci d'avance
merci d'avance
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Je vais même préciser quelque chose. Le but initial de ma manœuvre était de supprimer les doublons dans la colonne 1 mais la recherche des doublons se faisait dans la colonne 2, donc ensuite à terme je voulais supprimer toute cellule qui avait un doublon. maintenant avec votre macro je met tout en une seule colonne, je fais un tri et il me supprime les doublons . Cependant ce qu'il faudrait c'est que, des que excel trouve un doublon il supprime les 2.
Ex : André
André
pierre
jacques
jacques
aprés la macro il faudrait qu'il me reste seulement pierre; car lorsqu'il ya un doublon il faudrait supprimer les 2 en supprimant toute la ligne. En fait j'ai une base de donné de contact et lorsqu'il ya un doublon cela signifie que j'ai déja le contact dans mon logiciel et il ne faut pas que je le rentre 2 fois.
Je ne sais pas si je suis claire. Si vous pouviez m'aider ça serait génial et bravo pour votre premiere macro. MErci d'avance
Ex : André
André
pierre
jacques
jacques
aprés la macro il faudrait qu'il me reste seulement pierre; car lorsqu'il ya un doublon il faudrait supprimer les 2 en supprimant toute la ligne. En fait j'ai une base de donné de contact et lorsqu'il ya un doublon cela signifie que j'ai déja le contact dans mon logiciel et il ne faut pas que je le rentre 2 fois.
Je ne sais pas si je suis claire. Si vous pouviez m'aider ça serait génial et bravo pour votre premiere macro. MErci d'avance