Macro suppression ligne vide ne fonctionne pas
Résolu/Fermé
Loiwi
Messages postés
36
Date d'inscription
vendredi 1 février 2019
Statut
Membre
Dernière intervention
29 septembre 2020
-
14 avril 2020 à 09:08
Loiwi Messages postés 36 Date d'inscription vendredi 1 février 2019 Statut Membre Dernière intervention 29 septembre 2020 - 15 avril 2020 à 15:26
Loiwi Messages postés 36 Date d'inscription vendredi 1 février 2019 Statut Membre Dernière intervention 29 septembre 2020 - 15 avril 2020 à 15:26
A voir également:
- Macro suppression ligne vide ne fonctionne pas
- Forcer suppression fichier - Guide
- Aller à la ligne excel - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Supprimer page word vide - Guide
- Site de vente en ligne particulier - Guide
6 réponses
cs_Le Pivert
Messages postés
7904
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
14 août 2024
729
14 avril 2020 à 09:15
14 avril 2020 à 09:15
Bonjour,
déclare ta variable:
chez moi cela fonctionne!
déclare ta variable:
Dim i As Integer
chez moi cela fonctionne!
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é le 14 avril 2020 à 14:11
Modifié le 14 avril 2020 à 14:11
Bonjour
J'ai fait un essai sur des cellules fusionnées horizontalement et/ou verticalement et c'est OK
J'ai fait un essai sur des cellules fusionnées horizontalement et/ou verticalement et c'est OK
Option Explicit
'---------------------------------------------------------------------------
Sub Supprimer_si_vide()
Dim Ligne As Long
On Error Resume Next
Ligne = Columns("A").Find("*", , , , , xlPrevious).Row
Range("A2:A" & Ligne).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
Loiwi
Messages postés
36
Date d'inscription
vendredi 1 février 2019
Statut
Membre
Dernière intervention
29 septembre 2020
1
15 avril 2020 à 14:21
15 avril 2020 à 14:21
Avec la proposition de michel_m, je n'ai plus le message d'erreur mais la macro n'aboutit pas au résultat espéré. Est-ce dû au fait que les cellules qui m’intéressent ne sont pas vraiment vides mais la formule qui est inscrite dedans génère une cellule vide dans certains cas?
Loiwi
Messages postés
36
Date d'inscription
vendredi 1 février 2019
Statut
Membre
Dernière intervention
29 septembre 2020
1
14 avril 2020 à 09:19
14 avril 2020 à 09:19
Non toujours pas, est-ce que cela peut-être dû au fait que j'ai des cellules fusionnées dans la colonne A?
cs_Le Pivert
Messages postés
7904
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
14 août 2024
729
14 avril 2020 à 09:27
14 avril 2020 à 09:27
Bien sur, les macros n'aiment pas les cellules fusionnées!
Loiwi
Messages postés
36
Date d'inscription
vendredi 1 février 2019
Statut
Membre
Dernière intervention
29 septembre 2020
1
14 avril 2020 à 09:29
14 avril 2020 à 09:29
Y'a t-il un moyen de la faire fonctionner, par exemple lancer la macro sur l'ensemble des colonnes concernées par la fusion?
cs_Le Pivert
Messages postés
7904
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
14 août 2024
729
14 avril 2020 à 09:47
14 avril 2020 à 09:47
essaie ceci:
@+ Le Pivert
Sub Delete_line() Dim i As Long Dim cellule As Range Dim derligne As Long derligne = Range("A" & Rows.Count).End(xlUp).Row For i = derligne To 1 Step -1 For Each cellule In Range("A1:A" & derligne) If Range(cellule.Address).MergeCells Then Else If Cells(i, 1) = "" Then Cells(i, 1).EntireRow.Delete End If End If Next cellule Next i End Sub
@+ Le Pivert
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Loiwi
Messages postés
36
Date d'inscription
vendredi 1 février 2019
Statut
Membre
Dernière intervention
29 septembre 2020
1
14 avril 2020 à 10:35
14 avril 2020 à 10:35
J'ai testé la proposition pour les cellules fusionnées, la première sans cellules fusionnées mais j'ai toujours le même problème...
cs_Le Pivert
Messages postés
7904
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
14 août 2024
729
14 avril 2020 à 11:08
14 avril 2020 à 11:08
Voici une boucle sur les cellules fusionnées et enlever la fusion:
Sub detecteFusion() Dim cellule As Range Dim derligne As Long derligne = Range("A" & Rows.Count).End(xlUp).Row For Each cellule In Range("A1:A" & derligne) 'adapter plage cellule If Range(cellule.Address).MergeCells Then cellule.UnMerge 'enleve la fusion End If Next cellule End Sub
Loiwi
Messages postés
36
Date d'inscription
vendredi 1 février 2019
Statut
Membre
Dernière intervention
29 septembre 2020
1
15 avril 2020 à 15:26
15 avril 2020 à 15:26
J'aurais du commencer par là, en fait j'ai copié un fichier pour garder la mise en forme sans savoir qu'il y'avait des formules cachées derrière. Une fois que j'ai refait la feuille à neuf, la macro initiale a fonctionné parfaitement. Malgré tout je tiens à vous remercier pour la qualité et la rapidité de vos réponses