Suppression ligne contenant valeur TextBox

Kim75

XLDnaute Occasionnel
Salut le forum,

Cette macro supprime les lignes [d’une colonne donnée] contenant un mot déterminé :

PHP:
Sub supprimeligne()
Dim rng As Range
Dim tx As String
    tx = "le_mot"
    Do
        Set rng = Sheets("BD").Range("D:D").Find(tx)
        If rng Is Nothing Then
            Exit Do
        Else
            Sheets("BD ").Rows(rng.Row).Delete
        End If
    Loop
End Sub

Ce serait hyper sympa si quelqu’un pouvait me dire comment réécrire cette macro (ou une autre, peu importe) lorsque le mot en question est fonction de ce qu’affiche un TextBox.

En fait le but est que, lors de l’affichage d’un UserForm1, on puisse supprimer la ligne d’une BD dont la colonne D contient la valeur affichée dans la TextBox1 par exemple.

J’avais une autre requête un peu dans la suite logique de la précédente, lorsqu’il est question de supprimer une ligne dont la colonne D contient la valeur affichée dans la TextBox1, et dont la colonne G contient la valeur affichée dans la TextBox2

Par avance THANKS, Kim.
 
Dernière édition:

camarchepas

XLDnaute Barbatruc
Re : Suppression ligne contenant valeur TextBox

Sub supprimeligne()
Dim rng As Range
Dim tx As String
tx = "le_mot"
Do
Set rng = Sheets("BD").Range("D:D").Find(tx)
If rng Is Nothing Then
Exit Do
Else
Sheets("BD ").Rows(rng.Row).Delete
End If
Loop
End Sub

Tu paramètres ta fonction comme ceci

Sub supprimeligne(mot as string , colonne as string)
Dim rng As Range
Dim tx As String
tx =mot
Do
Set rng = Sheets("BD").Range(colonne ).Find(tx)
If rng Is Nothing Then
Exit Do
Else
Sheets("BD ").Rows(rng.Row).Delete
End If
Loop
End Sub

et dans le userform :
sur clic bouton tu dis :
mot = textebox1.text
colonne = textbox2.text &":" & textbox2.text (et oui , dans le box , tu ne renseignes qu'une fois la lettre de la colonne)
call supprimeligne (mot,colonne)

et voilà
 

Dull

XLDnaute Barbatruc
Re : Suppression ligne contenant valeur TextBox

Salut Kim75 le Forum

Peut-être comme cela

Code:
Private Sub CommandButton1_Click()
Dim rng As Range
Dim tx As String
    If TextBox1 = "" Then Exit Sub
    tx = TextBox1.Value
    Do
        Set rng = Sheets("Feuil1").Range("D:D").Find(tx)
        If rng Is Nothing Then
            Exit Do
        Else
            Sheets("Feuil1").Rows(rng.Row).Delete
        End If
    Loop
Unload Me
End Sub

EDITION: Re Nono

Bonne Journée
 

Pièces jointes

  • Kim75.zip
    11.6 KB · Affichages: 137

Kim75

XLDnaute Occasionnel
Re : Suppression ligne contenant valeur TextBox

Bonjour camarche(pas), Dull :)

Merci pour votre aimable réponse
Le code Dull fonctionne bien, pour une TextBox (Date réunuion)
Je vais maintenant devoir essayer de l'adapter pour deux TextBox (Date réunuion & Intitulé réunion)
Je joins le fichier au cas où vous auriez une idée sur la question :



PS : Je ne comprends pas pourquoi le calendrier que j’appelle à partir de la TextBox4 (Date de réunion) s’affiche mais n’inscrit pas sa valeur dans la TextBox en question.

Merci, Kim.
 
Dernière édition:

Dull

XLDnaute Barbatruc
Re : Suppression ligne contenant valeur TextBox

Re le Fil :)

Avant d'aller plus loin Kim les données qui sont dans ton fichier ne sont pas anonymes retire le et/ou remplace au besoin les données tels que les n° de Téléphone, @Email

Bonne Journée
 

Kim75

XLDnaute Occasionnel
Re : Suppression ligne contenant valeur TextBox

Dull !

Zut, je les ai pris sur un annuaire de sociétés en ligne.

Ok, j'efface les mails, j'espère que tu ne vas pas me demander d'effacer les noms de nos stars de cinéma, surtout qu'ils s'affichent partout eux :D

Kim.
 

kjin

XLDnaute Barbatruc
Re : Suppression ligne contenant valeur TextBox

Re,
Il y a comme un schisme...
La colonne D contient des dates et la textbox5...non !?
Pour la colonne H, est-ce bien la textbox 6 :D
La recherche doit-elle porter sur une partie du texte ou non
A+
kjin
 

Kim75

XLDnaute Occasionnel
Re : Suppression ligne contenant valeur TextBox

Re,
Il y a comme un schisme...
La colonne D contient des dates et la textbox5...non !?
Pour la colonne H, est-ce bien la textbox 6 :D
La recherche doit-elle porter sur une partie du texte ou non
A+
kjin

Kjin,

J'ai corrigé mon poste, il ne s'agit que de la colonne D (Date de réunion) et G (Intitulé de réunion).

Je mets le fichier entier en ligne comme tu l'as suggéré, ça pourrait servir au moteur de recherche XLD pour la même requête.



Kim.
 
Dernière édition:

Kim75

XLDnaute Occasionnel
Re : Suppression ligne contenant valeur TextBox

Salut les copains,

Voilà, en fait, la macro pour supprimer la ligne en rapport aux valeurs affichés dans les deux TextBox (4 et 5 dan cet exemple) était presque identique à la première, à force de tâtonner on a parfois la chance de déboucher quelque part lol :D :

PHP:
Private Sub SuprResa_Click()
Dim rng As Range
Dim txd, txi As String
    If TextBox4 = "" And TextBox5 = "" Then Exit Sub
    txd = TextBox4.Value
    txi = TextBox5.Value
    Do
        Set rng = Sheets("Historic").Range("D:D").Find(txd)
        Set rng = Sheets("Historic").Range("G:G").Find(txi)
        If rng Is Nothing Then
            Exit Do
        Else
            Sheets("Historic").Rows(rng.Row).Delete
        End If
    Loop
Unload Me
End Sub

Merci et bonne soirée, Kim.
 

camarchepas

XLDnaute Barbatruc
Re : Suppression ligne contenant valeur TextBox

Bonjour Dull Kjin et Kim,

Et oui , selon certains cas de figure , il risque de rester des lignes ou l'info colonne D était pourtant à enlever car tu utilises la même variable pour chercher, et si tu trouve en D et qu'il n'y à rien en G bien tu sorts de la boucle et t'as pas les félicitations de ton patron ...
En employant 2 variables de recherche et un and dans ton test cela devrait aller mieux.
 

kjin

XLDnaute Barbatruc
Re : Suppression ligne contenant valeur TextBox

Bonjour,
Il y a sans doute plus simple...
Entre un mot dans tbx5 ou tbx6 puis double-click sur un item de la listbox pour renvoyer dans les tbx
A+
kjin
 

Pièces jointes

  • kim.zip
    20 KB · Affichages: 102
  • kim.zip
    20 KB · Affichages: 97
  • kim.zip
    20 KB · Affichages: 89

Kim75

XLDnaute Occasionnel
Re : Suppression ligne contenant valeur TextBox

Salut Kjin, le forum

Merci pour ce code, il est génial, tu m’excuseras mais j’ai bidouillé un peu comme d’habitude lol :D

En tout cas, lorsqu'on clique sur une ligne de la ListBox, cela remplit tous les contrôles de l'USF :



Seul problème : lorsqu'on clique sur le bouton Valider (modification), ça rajoute une ligne au lieu de modifier la ligne en question.
Private Sub Ok_Click()
Dim ligne As Long
With Sheets("Historic")
ligne = Sheets("Historic").[G:G].Find(ListBox1, LookIn:=xlValues).Row
Sheets("Historic").Cells(ligne, 1) = Me.TextBox1
Sheets("Historic").Cells(ligne, 2) = Me.TextBox2
Sheets("Historic").Cells(ligne, 3) = Me.TextBox3
etc...
End With
End Sub
Bien à toi, Kim.
 
Dernière édition:

Discussions similaires

Réponses
12
Affichages
572

Statistiques des forums

Discussions
312 249
Messages
2 086 599
Membres
103 256
dernier inscrit
Melomaniak