Suppressions données
Cabrina
Messages postés
249
Date d'inscription
Statut
Membre
Dernière intervention
-
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je voudrais savoir s’il y a un moyen de supprimer les références qu’il y a dans mes lignes 2 et 3 (à partir de ma colonne G)
Il faudrait que j’arrive à les supprimer dans ma colonne A.
Sachant que je peux en avoir plus que ce qu’il y a actuellement et qu’il me faut pas que cela me mettre une erreur s’il n’y a rien.
Ci joint mon fichier:
https://www.cjoint.com/c/GBioBvr0oGi
Merci d'avance
Je voudrais savoir s’il y a un moyen de supprimer les références qu’il y a dans mes lignes 2 et 3 (à partir de ma colonne G)
Il faudrait que j’arrive à les supprimer dans ma colonne A.
Sachant que je peux en avoir plus que ce qu’il y a actuellement et qu’il me faut pas que cela me mettre une erreur s’il n’y a rien.
Ci joint mon fichier:
https://www.cjoint.com/c/GBioBvr0oGi
Merci d'avance
A voir également:
- Suppressions données
- Fuite données maif - Guide
- Supprimer les données de navigation - Guide
- Trier des données excel - Guide
- Sauvegarde des données - Guide
- Excel validation des données liste - Guide
2 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonsoir, tu veux supprimer les lignes dont le contenu de la colonne 1 est identique à la valeur d'une des cellules du rectangle dont le coin supérieur gauche est en G2?
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
je propose ceci:
Option Explicit Sub eliminate() Dim nlig As Long, ncol As Long Dim elim As Scripting.Dictionary Set elim = New Scripting.Dictionary nlig = 2 Do While Cells(nlig, 7) <> "" ncol = 7 Do While Cells(nlig, ncol) <> "" Call elim.Add(Cells(nlig, ncol).Value, "") ncol = ncol + 1 Loop nlig = nlig + 1 Loop nlig = 5 Do While Cells(nlig, 1) <> "" If elim.Exists(Cells(nlig, 1).Value) Then Rows(nlig).EntireRow.Delete Else nlig = nlig + 1 End If Loop End Sub
Bonjour,
J'ai fait la macro comme indiqué ci-dessus mais quand je veux l'activer j'ai :
Qui se met en jaune et :
Qui se surligne également.
J'ai également une petite question car j'aurai cette "procédure" à faire sur plusieurs onglets d'un même fichier, je ne vois pas le nom de l'onglet ? Comment la macro sait ou aller supprimer ?
Merci pour votre aide.
J'ai fait la macro comme indiqué ci-dessus mais quand je veux l'activer j'ai :
Sub eliminate()
Qui se met en jaune et :
elim As Scripting.Dictionary
Qui se surligne également.
J'ai également une petite question car j'aurai cette "procédure" à faire sur plusieurs onglets d'un même fichier, je ne vois pas le nom de l'onglet ? Comment la macro sait ou aller supprimer ?
Merci pour votre aide.
Pour éviter l'erreur, il faut, dans l'utilitaire VBA (celui qui te montre l'erreur en jaune), dans le menu outils, choix references, cocher "microsoft scripting runtime".
En ce qui concerne le nom de l'onglet, voici une macro améliorée où tu peux contrôler le nom de l'onglet:
En ce qui concerne le nom de l'onglet, voici une macro améliorée où tu peux contrôler le nom de l'onglet:
Option Explicit Sub eliminate() Dim rectangle As Range Dim nlig As Long, ncol As Long Dim wk As Worksheet Dim elim As Scripting.Dictionary Set elim = New Scripting.Dictionary Set wk = ThisWorkbook.Sheets("IP sur OF composants") nlig = 2 Do While wk.Cells(nlig, 7) <> "" ncol = 7 Do While wk.Cells(nlig, ncol) <> "" Call elim.Add(wk.Cells(nlig, ncol).Value, "") ncol = ncol + 1 Loop nlig = nlig + 1 Loop nlig = 5 Do While wk.Cells(nlig, 1) <> "" If elim.Exists(wk.Cells(nlig, 1).Value) Then wk.Rows(nlig).EntireRow.Delete Else nlig = nlig + 1 End If Loop End Sub
En fait c'est les références qui commence en M... que je veux supprimé de ma liste qui se trouve n colonne A