Bonjour,
Je suis novice en Vba et je bug sur un point.
J'ai fait un code qui fonctionne lorsque je l'ai affecté à un bouton de la feuille. Donc lorsque j'appuie sur le bouton ça marche.
Ensuite j'ai voulu que ce code s'exécute lorsque je quitte/ferme un userform, au lieu d'aller appuyer sur le bouton de la feuille. Et là ça ne va plus ... ! :
Il s'agit d'un code qui supprime les lignes vides dans ma feuille "For" :
Code affecté au Bouton :
Sub SupprimerLignesVide()
'Étape 1: Déclaration des variables
Dim MaPlage As Range
Dim iCompteur As Long
'Étape 2: Définir la plage de cellules
Set MaPlage = ActiveSheet.UsedRange
'Étape 3: Commencez la boucle avec le compte à rebours
For iCompteur = MaPlage.Rows.Count To 1 Step -1
'Étape 4: si la ligne entière est vide, supprimez-la
If Application.CountA(Rows(iCompteur).EntireRow) = 0 Then
Rows(iCompteur).Delete
End If
'Étape 5: Réduisez la valeur du compteur
Next iCompteur
End Sub
Lorsque je l'ai affecté à la fermeture du UserForm j'ai écrit comme suit :
Private Sub Userform_Terminate()
'Étape 1: Déclaration des variables
Dim MaPlage As Range
Dim iCompteur As Long
'Étape 2: Définir la plage de cellules
Set MaPlage = Sheets("For").UsedRange
'Étape 3: Commencez la boucle avec le compte à rebours
For iCompteur = MaPlage.Rows.Count To 1 Step -1
'Étape 4: si la ligne entière est vide, supprimez-la
If Application.CountA(Rows(iCompteur).EntireRow) = 0 Then
Rows(iCompteur).Delete
End If
'Étape 5: Réduisez la valeur du compteur
Next iCompteur
End Sub
S'il vous plait dépannez moi, et merci d'avance :)