Supprimer lignes de coulurs
Résolu
gambleway
Messages postés
9
Date d'inscription
Statut
Membre
Dernière intervention
-
gambleway -
gambleway -
Bonjour la communauté,
Débutant en VBA je viens profiter de l'éxpérience des professionnels.
J'ai codé, hier une macro permettant de colorer certaines cellules des lignes en fonction des critères.
J'aimerai aujourd'hui, supprimer les cellules de couleurs violettes (7) ainsi que l'ensebmle de la ligne ou elle se situe en gardant la premiere colonne (colonne A ).
Pour l'instant, le programme ne fontionne pas. Si je remplace DeleteEntireRow par ClearContents, J'arrive à supprimer le contenu des cellules violettes de la première ligne mais pas plus...
Si vous avez des idées ou suggestions pour que je progesse, je suis preneur.
Merci à vous.
Sub Erase_resigned_People()
Dim Number_Resigned As Integer
Number_Resigned = 0
Dim nb_of_columns As Integer
nb_of_columns = 0
While Len(Range("B20").Offset(Number_Resigned, 0).Value) <> 0
Number_Resigned = Number_Resigned + 1
Wend
For nb_of_columns = 0 To 12
' Supprimer les cellules viollettes
If Len(Range("B20").Offset(Number_Resigned, nb_of_columns).Value) <> 0 Then
If Range("B20").Offset(Number_Resigned, nb_of_columns).Interior.ColorIndex = 7 Then
Range("B20").Offset(Number_Resigned, nb_of_columns).DeleteEntireRow
End If
End If
Next
End Sub
Débutant en VBA je viens profiter de l'éxpérience des professionnels.
J'ai codé, hier une macro permettant de colorer certaines cellules des lignes en fonction des critères.
J'aimerai aujourd'hui, supprimer les cellules de couleurs violettes (7) ainsi que l'ensebmle de la ligne ou elle se situe en gardant la premiere colonne (colonne A ).
Pour l'instant, le programme ne fontionne pas. Si je remplace DeleteEntireRow par ClearContents, J'arrive à supprimer le contenu des cellules violettes de la première ligne mais pas plus...
Si vous avez des idées ou suggestions pour que je progesse, je suis preneur.
Merci à vous.
Sub Erase_resigned_People()
Dim Number_Resigned As Integer
Number_Resigned = 0
Dim nb_of_columns As Integer
nb_of_columns = 0
While Len(Range("B20").Offset(Number_Resigned, 0).Value) <> 0
Number_Resigned = Number_Resigned + 1
Wend
For nb_of_columns = 0 To 12
' Supprimer les cellules viollettes
If Len(Range("B20").Offset(Number_Resigned, nb_of_columns).Value) <> 0 Then
If Range("B20").Offset(Number_Resigned, nb_of_columns).Interior.ColorIndex = 7 Then
Range("B20").Offset(Number_Resigned, nb_of_columns).DeleteEntireRow
End If
End If
Next
End Sub
A voir également:
- Supprimer lignes de coulurs
- Supprimer rond bleu whatsapp - Guide
- Impossible de supprimer une page word - Guide
- Impossible de supprimer un fichier - Guide
- Supprimer pub youtube - Accueil - Streaming
- Partage de photos en ligne - Guide
1 réponse
Bonjour,
Pas évident de comprendre la finalité !
A priori, ton code balaye la colonne B depuis la cellule B20, recherche la première cellule vide puis balaye 13 cellules de cette ligne (colonnes B à N), vérifie si les cellules renseignées ont une couleur violette et supprime la ligne si c'est le cas.
En résumé, sur la ligne Number_Resigned, si une cellule des 13 colonnes B à N est violette, on supprime la ligne entière. C'est bien ça ?
A+
Pas évident de comprendre la finalité !
A priori, ton code balaye la colonne B depuis la cellule B20, recherche la première cellule vide puis balaye 13 cellules de cette ligne (colonnes B à N), vérifie si les cellules renseignées ont une couleur violette et supprime la ligne si c'est le cas.
En résumé, sur la ligne Number_Resigned, si une cellule des 13 colonnes B à N est violette, on supprime la ligne entière. C'est bien ça ?
A+
A+
A+
Avec un fichier exemple et quelques explications, ce serait plus simple.
Pour joindre un fichier : https://www.cjoint.com/
A+
J'ai finalement pu résoudre mon problème. Je serai plus expicite lorsque je poserai une question.
Merci à toi.
A+