Supprimer les lignes vidse d'un tableau par macro

Fermé
ced5757 Messages postés 40 Date d'inscription mercredi 8 mai 2013 Statut Membre Dernière intervention 20 mai 2013 - Modifié par ced5757 le 19/05/2013 à 17:04
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 - 19 mai 2013 à 19:02
Bonjour,



je cherche a supprimer les lignes vides d'un tableau en passant par un macro.
seulement les manipulation que je peux faire d'habitude ne marche pas

merci d'avance
A voir également:

9 réponses

Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
19 mai 2013 à 17:09
Salut,

Exemple tu veux supprimer les lignes dont les cellules de la colonne A sont vides, tu peux utiliser cette ligne de code

Range("A2:A65000").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
1
ced5757 Messages postés 40 Date d'inscription mercredi 8 mai 2013 Statut Membre Dernière intervention 20 mai 2013 1
19 mai 2013 à 17:26
merci mike tu m'as beaucoup aidé aujourd'hui je vais en profite pour poser une autre question en même temps

j'ai un nom dans une cellule et je voudrais faire une macro qui recherche ce nom dans une colonne d'un tableau

c'est comme si j'utilise le filtre de ma colonne pour rechercher le nom sauf que je prend le nom que je recherche dans un cellule en dehors du tableau

comment faire ? car pour le moment j'arrive a faire la recherche par macro sauf que si le nom change dans ma cellule il n'en tien pas compte
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
Modifié par Mike-31 le 19/05/2013 à 17:30
Re,

Tu peux réexpliquer ça, tu as un nom dans une cellule exemple titi dans A2
et tu veux sélectionner ou l'adresse de la cellule qui contient ce mot titi dans la colonne D par exemple, c'est cela

A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
ced5757 Messages postés 40 Date d'inscription mercredi 8 mai 2013 Statut Membre Dernière intervention 20 mai 2013 1
19 mai 2013 à 18:01
oui sauf que plusieurs cellules vont contenir titi.
l'objectif et de supprimer les lignes de mon tableau qui contiennent titi dans la colonne D
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
Modifié par Mike-31 le 19/05/2013 à 18:22
Re,

voila

Dim i As Long
For i = ActiveSheet.UsedRange.Rows.Count To 1 Step -1
If Cells(i, 4) Like "titi" Then Rows(i).Delete
Next

tu peux également faire référence à une cellule contenant le critère exemple la cellule A1

Dim i As Long
For i = ActiveSheet.UsedRange.Rows.Count To 1 Step -1
If Cells(i, 4) Like [A1] Then Rows(i).Delete
Next

A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ced5757 Messages postés 40 Date d'inscription mercredi 8 mai 2013 Statut Membre Dernière intervention 20 mai 2013 1
19 mai 2013 à 18:31
c'est parfait mais cela ne marche pas si je mets ma cellule a la place de titi car le nom dans la cellule va changer régulièrement

il faudrait juste que je puisse mettre ma cellule a la place de titi
j'ai fait ceci mais ca ne marche pas

Dim i As Long
For i = ActiveSheet.UsedRange.Rows.Count To 1 Step -1
If Cells(i, 4) Like "B11" Then Rows(i).Delete
Next
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
19 mai 2013 à 18:35
Re,

dans mon post précédent tu as les deux propositions, soit tu saisis le nom dans le code ou tu fais référence à une cellule dans mon exemple la cellule A1
0
ced5757 Messages postés 40 Date d'inscription mercredi 8 mai 2013 Statut Membre Dernière intervention 20 mai 2013 1
19 mai 2013 à 18:44
arf je n'ai vus que la moitié de message... mes yeux ne sont plus très performant apparemment.

je pense que ca devrait beaucoup mieux marcher
0
ced5757 Messages postés 40 Date d'inscription mercredi 8 mai 2013 Statut Membre Dernière intervention 20 mai 2013 1
19 mai 2013 à 18:58
par contre comment prendre une valeur d'une cellule sur une autre feuille ?
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
19 mai 2013 à 19:02
Re,

le plus simple est de nommer la cellule exemple la cellule sur la feuille xxxx est nommée titi, la ligne de commande sera

If Cells(i, 4) Like [titi] Then Rows(i).Delete
0