Suppression de ligne avec certaines conditions

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

INFINITY100

XLDnaute Occasionnel
Bonsoir mes amis

Voila je suis face un problème de suppression de ligne en effet je cherche supprimer une ligne selon son numéro défini dans l'UserForm.

Pour être plus claire je joins le fichier avec les détails de ce que je veux réaliser.

Merci par avance à vous tous.

Cordialement
 

Pièces jointes

Re : Suppression de ligne avec certaines conditions

Bonjour à tous

Une début de piste non finalisé
(ici suppression des lignes)
Code:
Private Sub Validation_Click()
Dim ligsuppr&
ligsuppr = Application.Match(TextBox1 * 1, Sheets("BD").Range("B12:B10000"), 0) + 11
Sheets("BD").Rows(ligsuppr).Delete shift:=xlUp
Sheets("Dettes_Règlements").Rows(ligsuppr).Delete shift:=xlUp
End Sub
 
Re : Suppression de ligne avec certaines conditions

Bonsoir tout le monde

Merci beaucoup Staple1600 grâce à toi j'ai pu avancer dans ma macro et résoudre 3 problèmes à deux détails pré

le premier c'est d'ajouter un message d’arrêt quand il saisit un chiffre qui n'est pas présent dans la colonne B (exemple numéro 10)

Et le deuxième c'est le 3ème point de ma demande car c'est lui l’essentiel

Voici la macro dans l'ensemble (Voir Exemple V1 joint)

Code:
Private Sub Validation_Click()
Dim ligsuppr&
'Si le TextBox1 est vide ou n'est pas une valeur numérique
If Trim(TextBox1) = "" Or Not IsNumeric(TextBox1) Then
'Alors arrêt avec ce message en sortant de la boucle et en retourant sur TextBox1
  MsgBox "Vérifier le format du nombre saisie !", vbCritical
  On Error GoTo 0: TextBox1.SetFocus: Exit Sub
'Et si le TextBox1 est une valeur numérique négative ou nul
ElseIf CDbl(TextBox1) <= 0 Then
  ' Alors arrêt avec ce message en sortant de la boucle et en retourant sur TextBox1
  MsgBox "Veuiller saisir un nombre positif", vbCritical
  On Error GoTo 0: TextBox1.SetFocus: Exit Sub
'Et si le TextBox1 est une valeur numérique valide (Positive)
ElseIf CDbl(TextBox1) > 0 Then
' Alors arrêt avec ce message de demande de confirmation sinon retour sur TextBox1
If MsgBox("Attention! Ceci supprimera la ligne aussi de la BD voulez-vous vraiment continuer ? ", vbYesNo, "Demande de confirmation") = vbYes Then
'Si après confirmation et "OUI" Alors efface la ligne au numéro indiqué dans TextBox1 des deux
'feuilles "BD" et Dettes_Règlements"
  ligsuppr = Application.Match(TextBox1 * 1, Sheets("BD").Range("B12:B10000"), 0) + 11
Sheets("BD").Rows(ligsuppr).Delete shift:=xlUp
Sheets("Dettes_Règlements").Rows(ligsuppr).Delete shift:=xlUp
Unload Suppression
  End If
 End If
End Sub

Merci encore mes amis

PS : un commentaire dans la macro serait le bienvenue 😱
 

Pièces jointes

Re : Suppression de ligne avec certaines conditions

Bonsoir,

Salut Staple 🙂

J'ai modifié la façon de faire...
J'utilise un Combobox, qui va charger les numéros d'opérations..

Ainsi, bien moins de contrôles à effectuer, juste à vérifier que le combobox n'est pas vide...

Et un code pour incrémenter la série, après suppression

Cette incrémentation n'aura lieu que s'il y a plus de 2 opérations restantes.

Le code est commenté

Bonne soirée
 

Pièces jointes

Re : Suppression de ligne avec certaines conditions

Merci bhbh

l'idée du ComboBox est jolie surtout pour l'incrémentation ça fonctionne très bien car à la suppression le chiffre est aussitôt remplacé, seulement en ce qui s'agit de mon fichier j'aimerai bien garder le TextBox en d'autre terme garder la même formule de l'exemple v1 et lui ajouté l'incrémentation ça sera le résultat voulu. ça c'est pour le premier point

Le deuxième point stopper l'utilisateur s'il saisit un chiffre qui n'est pas présent dans les lignes car même avec le ComboBox si je tape 20 par exemple c'est la barre de titre qui saute

Merci encore mon ami 🙂
 
Re : Suppression de ligne avec certaines conditions

Re-,

Pour le 2ème point, tu cliques sur le combobox (dans le VBE), tu fais F4 pour voir les propriétés, et tu mets la propriété MatchRequired à True

Ainsi, tu ne peux pas mettre d'autres valeurs que celles du cbbx..Tu auras un message d'erreur...

Pour le 1er, tu as le code, tu peux l'adapter...(même si je ne comprends pas ton choix, notamment avec cette propriété MatchRequired en plus...)

Bon courage
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour