A voir également:
- Supprimer les lignes à 0
- Supprimer rond bleu whatsapp - Guide
- Fichier impossible à supprimer - Guide
- Supprimer page word - Guide
- Supprimer pub youtube - Accueil - Streaming
- Remettre a 0 un pc - Guide
1 réponse
Bonjour le forum,
Essaie comme ça (à adapter) :
Essaie comme ça (à adapter) :
Sub Macro1()
Dim O As Worksheet 'déclare la variable O (Onglet)
Dim TC As Variant 'déclare la variable TC (Tableau de Cellules)
Dim I As Long 'déclare la variable I (Incrément)
Dim J As Byte 'déclare la variable J (incrément)
Dim PL As Range 'déclare la variable PL (PLage)
Dim TEST As Boolean 'déclare la variable TEST
Set O = Sheets("Feuil1") 'définit l'onglet O (à adapter)
Set PL = O.Range("A1") 'initialise la plage PL
TC = O.Range("A1").CurrentRegion 'définit le tableau de cellules TC
For I = 1 To UBound(TC, 1) 'boucle 1 : sur toutes les lignes tu tableau TC
TEST = False 'initialise la variable TEST
For J = 2 To 30 'boucle 2 : sur toutes les colonnes 2 à 30 (=> B à AD) du tableau TC
If TC(I, J) <> 0 Then 'condition : si la valeur ligne I colonne J n'est pas nulle
TEST = True 'définit la variable TEST
Exit For 'for de la boucle 2
End If 'fin de la condition
Next J 'prochaine colonne de la boucle 2
'si TEST est [Faux] redéfinit la palge PL (la ligne I si PL ne contien qu'une seule cellule, sinon, l'union de PL et de la ligne I)
If TEST = False Then Set PL = IIf(PL.Cells.Count = 1, O.Rows(I), Application.Union(PL, O.Rows(I)))
Next I 'prochaine ligne de la boucle 1
PL.Delete 'efface la plage PL
End Sub