Supression d'une ligne excel apres récuperation des informations

Résolu
gislain99 - 21 mai 2013 à 17:35
 gislain99 - 25 mai 2013 à 21:02
Bonjour,

J'ai un Userform nomé "Userform3" avec une multipage. Sur une des pages nomé "Containers" j'ai plusieur textbox
listbox bouton qui me permete de renseigner une feuille excel nomé "bases containers" j'ai un bouton pour réaliser des modifications quand je clique dessus j'ouvre un userform nomé "Userform5" qui me demande de saisir l'immatriculation à modifier puis je valide et la j'ais toutes les info disponible sue cette immatriculation qui réaparesse dans les textbox listbox de ma page nomé "container" apres que toutes ces information réaparesse je voudrais suprimer ces données de ma feuille excel.



Code Visual Basic :

'Modification container
Private Sub CommandButton1_Click()
Dim cel As Range, lig&, i&
If TextBox1 + TextBox2 + Label2 + TextBox3 <> "" Then
Set cel = Feuil11.Range("A2:A" & Feuil11.Range("A" & Rows.Count).End(xlUp).Row).Find(TextBox1 + TextBox2 + Label2 + TextBox3, , , xlWhole)
If Not cel Is Nothing Then lig = cel.Row Else MsgBox "Aucune correspondance trouvée", , "Pas de correspondance": Exit Sub
'UserForm3.TextBox4 = Feuil11.Cells(lig, 1)
'UserForm3.TextBox5 = Feuil11.Cells(lig, 1)
'UserForm3.TextBox6 = Feuil11.Cells(lig, 1)
'UserForm3.TextBox7 = Feuil11.Cells(lig, 2)
'UserForm3.TextBox8 = Feuil11.Cells(lig, 2)
UserForm3.ComboBox1 = Feuil11.Cells(lig, 3)
UserForm3.ComboBox2 = Feuil11.Cells(lig, 4)
UserForm3.TextBox18 = Feuil11.Cells(lig, 5)
UserForm3.TextBox146 = Feuil11.Cells(lig, 6)
UserForm3.ComboBox3 = Feuil11.Cells(lig, 7)
UserForm3.TextBox10 = Feuil11.Cells(lig, 8)
UserForm3.ComboBox5 = Feuil11.Cells(lig, 9)
UserForm3.ComboBox6 = Feuil11.Cells(lig, 10)
UserForm3.ComboBox7 = Feuil11.Cells(lig, 11)
UserForm3.ComboBox8 = Feuil11.Cells(lig, 12)
UserForm3.TextBox20 = Feuil11.Cells(lig, 13)
UserForm3.TextBox61 = Feuil11.Cells(lig, 14)
UserForm5.Hide
End If
End Sub

9 réponses

cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 22
21 mai 2013 à 20:32
Bonjour,

Comme tu connais la ligne (lig) de tes données, si tu veux supprimer cette ligne il te reste a`utiliser
Sheets("NomDeFeuille").Rows(lig).delete

Et dans ton cas, j'ose espérer que Feuil11 est un objet worksheets qui pointe sur une feuille... autrement, il faudrait écrire Sheets("Feuil11")

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI
3
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 223
21 mai 2013 à 21:56
Voilà ! (et un salut à MPi)
Et toute ta prose aurait dû se résumer à ceci :
"Comment supprimer une ligne de rang connu d'une feuille de calcul ?". !
Et n'oublie pas de prendre une précaution (par exemple : si lig > 0).
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
3
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 223
22 mai 2013 à 07:21
Autre chose : lorsque l'on supprime en boucle des lignes, il faut toujours commencer par le bas et remonter vers le haut pour ne pas se faire des crocs_en-jambe avec leurs rangs.

Une autre manière est de constituer une plage des lignes à supprimer (appelons-la plage) en utilisant la méthode Union (à lire dans ton aide VBA) puis ===>> plage.entirerow.delete

Tu en sais maintenant assez pour t(y mettre sérieusement.
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
3
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 223
21 mai 2013 à 18:08
Bonjour,
Je t'avais pourtant dit dans ton autre discussion :
idem pour ta troisième question en isolant la difficulté (sans donc reprendre ce qui la précède).
Merci de te conformer à cette règle

Si tu veux mon aide, il va te falloir apprendre à isoler une difficulté et à l'exposer techniquement (nul besoin du code qui la précède ni même de connaître ton appli).
Ne compte pas sur mon aide si non ...


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Bonjour,
Merci baucoup a vous deux
MPi ton code fonctionne tres bien
ucfoutu merci pour tes renseignements
0
Bonjour

il me reste un petit souci quand je rappelle les infos pour re-remplir mes textbox et listbox je voudrais autoriser le retour des cellule vide
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 22
25 mai 2013 à 20:51
Bonjour

Ce serait préférable que tu ouvres un nouveau message et aussi y mettre des explications un peu plus claires sur ce que tu entends par
autoriser le retour des cellule vide
(?)...

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI
0
ok je fais sa
0
je vien de créer ce message
"Recuperation d'une cellule vide vers Combo ou textbox"
0
Rejoignez-nous