Suppressions de lignes
Fermé
pascalou83400
Messages postés
273
Date d'inscription
dimanche 20 juillet 2014
Statut
Membre
Dernière intervention
24 janvier 2022
-
16 sept. 2014 à 09:28
pascalou83400 Messages postés 273 Date d'inscription dimanche 20 juillet 2014 Statut Membre Dernière intervention 24 janvier 2022 - 17 sept. 2014 à 10:02
pascalou83400 Messages postés 273 Date d'inscription dimanche 20 juillet 2014 Statut Membre Dernière intervention 24 janvier 2022 - 17 sept. 2014 à 10:02
A voir également:
- Suppressions de lignes
- Partage de photos en ligne - Guide
- Site de vente en ligne particulier - Guide
- Excel trier par ordre alphabétique en gardant les lignes - Guide
- Écrire plusieurs lignes dans une cellule excel mac - Guide
- Excel afficher toutes les lignes masquées ✓ - Forum Excel
7 réponses
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
Modifié par michel_m le 16/09/2014 à 09:40
Modifié par michel_m le 16/09/2014 à 09:40
Bonjour
Michel
Sub virerligvide()
Dim Derlig As Long
Derlig = Columns("B").Find("*", , , , , xlPrevious).Row
If Application.CountIf(Range("B1:B" & Derlig), "") > 0 Then
Range("A1:A" & Derlig).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End If
End Sub
Michel
pascalou83400
Messages postés
273
Date d'inscription
dimanche 20 juillet 2014
Statut
Membre
Dernière intervention
24 janvier 2022
16 sept. 2014 à 11:26
16 sept. 2014 à 11:26
Bonjour Michel,
j'ai oublié de préciser que mon tableau commencer en A18, car au dessus j'ai mes entêtes et il y a des lignes vides.
Donc j'imagine que je dois mettre ("B18:B), mais je ne comprends pas le Range("A1:A" & derlig), c'est délimiter le tableau ?
j'ai oublié de préciser que mon tableau commencer en A18, car au dessus j'ai mes entêtes et il y a des lignes vides.
Donc j'imagine que je dois mettre ("B18:B), mais je ne comprends pas le Range("A1:A" & derlig), c'est délimiter le tableau ?
pascalou83400
Messages postés
273
Date d'inscription
dimanche 20 juillet 2014
Statut
Membre
Dernière intervention
24 janvier 2022
16 sept. 2014 à 12:07
16 sept. 2014 à 12:07
Bon j'ai modifié, mais ca ne marche pas comme je le souhaite.
Cela ne supprime pas toutes les lignes et ma mise en page ne se fait pas.
Et est ce que vous connaissez le code qui permettrai de mettre la hauteur de ligne autofit avec une hauteur minimum à respecter ?
Je joins le fichier , je pense que c'est mieux, la boucle a été écrite par un informaticien et maintenant je remplie moi même les macros.
Merci pour voter aide.
https://www.cjoint.com/?3IqmiQof8y8
Cela ne supprime pas toutes les lignes et ma mise en page ne se fait pas.
Et est ce que vous connaissez le code qui permettrai de mettre la hauteur de ligne autofit avec une hauteur minimum à respecter ?
Je joins le fichier , je pense que c'est mieux, la boucle a été écrite par un informaticien et maintenant je remplie moi même les macros.
Merci pour voter aide.
https://www.cjoint.com/?3IqmiQof8y8
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
16 sept. 2014 à 17:34
16 sept. 2014 à 17:34
Excuse moi, j'étais pressé et donc...
ci dessous la macro mais je n'ai pas vu de vide dans la colonne B par contre, il y en a en colonne B
j'ai essayé en supprimant une donnée dans la col B et c'est Ok
si c'est en colonne A remplace les B18:B &... par A18:A &...
Attention: tu as des données venant d'un autre classeur:
le résultat d'une formule renvoyant "" n'est pas une cellule "xlCellTypeBlanks"
comme disait Raymond Devos Rien c'est pas vide
ci dessous la macro mais je n'ai pas vu de vide dans la colonne B par contre, il y en a en colonne B
Option Explicit
'------
Sub virerligvide()
Dim Derlig As Integer
Application.ScreenUpdating = False
Derlig = Columns("B").Find("*", , , , , xlPrevious).Row
If Application.CountIf(Range("B18:B" & Derlig), "") > 0 Then
Range("B18:B" & Derlig).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End If
End Sub
j'ai essayé en supprimant une donnée dans la col B et c'est Ok
si c'est en colonne A remplace les B18:B &... par A18:A &...
Attention: tu as des données venant d'un autre classeur:
le résultat d'une formule renvoyant "" n'est pas une cellule "xlCellTypeBlanks"
comme disait Raymond Devos Rien c'est pas vide
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
pascalou83400
Messages postés
273
Date d'inscription
dimanche 20 juillet 2014
Statut
Membre
Dernière intervention
24 janvier 2022
16 sept. 2014 à 18:04
16 sept. 2014 à 18:04
Je ne sais pas si je m'explique bien, je veux supprimer les lignes en dessous de mon tableau en prenant comme référence la colonne B, qui aura toujours des données.
Si le cellule de la colonne B est vide on supprime.
Car dans la boucle, j'ai un code qui me rajoute une ligne en fin de tableau pour faire la somme de 2 colonnes.
Le problème est que je me retrouve souvent avec des lignes vides ou plusieurs créations de cette fameuse ligne qui doit faire la somme.
Donc j'ai pensé que si je supprimer toutes les lignes vides avant de faire la création de cette ligne en fin de tableau, je n'aurai plus de problème.
Je vais essayer ton code et je dis si cela fonctionne.
Si le cellule de la colonne B est vide on supprime.
Car dans la boucle, j'ai un code qui me rajoute une ligne en fin de tableau pour faire la somme de 2 colonnes.
Le problème est que je me retrouve souvent avec des lignes vides ou plusieurs créations de cette fameuse ligne qui doit faire la somme.
Donc j'ai pensé que si je supprimer toutes les lignes vides avant de faire la création de cette ligne en fin de tableau, je n'aurai plus de problème.
Je vais essayer ton code et je dis si cela fonctionne.
pascalou83400
Messages postés
273
Date d'inscription
dimanche 20 juillet 2014
Statut
Membre
Dernière intervention
24 janvier 2022
16 sept. 2014 à 18:22
16 sept. 2014 à 18:22
je crois avoir compris , je veux supprimer les lignes en remontant jusqu'à la dernier ligne utilisée en prenant comme référence les cellules de la colonne B.
et quand la boucle crée la dernière ligne pour la somme des 2 colonnes, je devrai avoir avoir ma dernière ligne avec la mise en page.
et quand la boucle crée la dernière ligne pour la somme des 2 colonnes, je devrai avoir avoir ma dernière ligne avec la mise en page.
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
17 sept. 2014 à 09:04
17 sept. 2014 à 09:04
Bonjour
J'y comprends rien à ce que tu demandes au fur et à mesure de tes messages !
à savoir la demande au 1° message
Je cherche un code pour supprimer toutes les lignes vides en dessous d'un tableau sur la colonne B qui aura toujours des données pour les lignes utilisées.
N'ayant pas de boule de cristal...
Bonne continuation
J'y comprends rien à ce que tu demandes au fur et à mesure de tes messages !
à savoir la demande au 1° message
Je cherche un code pour supprimer toutes les lignes vides en dessous d'un tableau sur la colonne B qui aura toujours des données pour les lignes utilisées.
N'ayant pas de boule de cristal...
Bonne continuation
pascalou83400
Messages postés
273
Date d'inscription
dimanche 20 juillet 2014
Statut
Membre
Dernière intervention
24 janvier 2022
17 sept. 2014 à 10:02
17 sept. 2014 à 10:02
Bonjour Michel,
Oui c'est bien cela que je faire, mais j'ai toujours la ligne somme qui est créée en fin de code, elle ne se supprime pas, et quand je relance la macro, elle m'en recrée une 2eme.
je n'arrive pas à comprendre pourquoi cette ligne ne se supprime pas , alors que la cellule de la colonne B est vide.
Une question quand le code supprime , il parcoure la cellule ou toute la ligne ?
Merci pour ton aide.
Oui c'est bien cela que je faire, mais j'ai toujours la ligne somme qui est créée en fin de code, elle ne se supprime pas, et quand je relance la macro, elle m'en recrée une 2eme.
je n'arrive pas à comprendre pourquoi cette ligne ne se supprime pas , alors que la cellule de la colonne B est vide.
Une question quand le code supprime , il parcoure la cellule ou toute la ligne ?
Merci pour ton aide.