Solution pour un problème VBA Excel.
Résolu/Fermé
2pax.cruz
-
5 juil. 2010 à 08:17
Yoskopolite Messages postés 83 Date d'inscription lundi 14 juillet 2008 Statut Membre Dernière intervention 9 novembre 2012 - 5 juil. 2010 à 13:26
Yoskopolite Messages postés 83 Date d'inscription lundi 14 juillet 2008 Statut Membre Dernière intervention 9 novembre 2012 - 5 juil. 2010 à 13:26
Bonjour,
j'ai un soucis en VBA excel. En fait, je n'arrive pas à voir comment je pourrais faire...
Je vous explique :
J'ai une liste en excel, que l'utilisateur rempli avec un formulaire. J'aimerais permettre à l'employé de supprimer des lignes facilement, sans devoir faire clic-droit supprimer.
Je vous remercie.
j'ai un soucis en VBA excel. En fait, je n'arrive pas à voir comment je pourrais faire...
Je vous explique :
J'ai une liste en excel, que l'utilisateur rempli avec un formulaire. J'aimerais permettre à l'employé de supprimer des lignes facilement, sans devoir faire clic-droit supprimer.
Je vous remercie.
A voir également:
- Solution pour un problème VBA Excel.
- Liste déroulante excel - Guide
- Formule excel pour additionner plusieurs cellules - Guide
- Word et excel gratuit - Guide
- Si et excel - Guide
- Trier un tableau excel - Guide
4 réponses
Yoskopolite
Messages postés
83
Date d'inscription
lundi 14 juillet 2008
Statut
Membre
Dernière intervention
9 novembre 2012
8
5 juil. 2010 à 08:43
5 juil. 2010 à 08:43
Il te suffit (par le code) de sélectionner une des cases de la ligne concernée (dans mon exemple ci-dessous, ça sera A1) et de lui demander de supprimer toute la ligne :
Range("A1").EntireRow.Delete
Oui, ça je sais. Mais je ne sais pas comment je peux faire pour qu'il selectionne la ligne et qu'elle se supprime...
Merci.
Merci.
Yoskopolite
Messages postés
83
Date d'inscription
lundi 14 juillet 2008
Statut
Membre
Dernière intervention
9 novembre 2012
8
5 juil. 2010 à 09:03
5 juil. 2010 à 09:03
Je me suis mal exprimé, le code que je t'ai indiqué s'occupe de supprimer la ligne sans avoir à la sélectionner.
Mais j'ai peut-être pas tout compris à la question :-D
PS : si tu veux que l'utilisateur sélectionne une ligne et clique sur un bouton pour la supprimer, le code du bouton sera alors :
Mais j'ai peut-être pas tout compris à la question :-D
PS : si tu veux que l'utilisateur sélectionne une ligne et clique sur un bouton pour la supprimer, le code du bouton sera alors :
Activecell.EntireRow.Delete
michel_m
Messages postés
16602
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 313
5 juil. 2010 à 09:17
5 juil. 2010 à 09:17
Bonjour,
Pour sélectionner une plage de cellules depuis ton userform tu as le contrôle "refedit" de la boite à outils...
tu as intérêt à vérifier que l'utilisateur n'a pris qu'une deule ligne dans le genre plage.rows.count=1(non testé)
Pour sélectionner une plage de cellules depuis ton userform tu as le contrôle "refedit" de la boite à outils...
tu as intérêt à vérifier que l'utilisateur n'a pris qu'une deule ligne dans le genre plage.rows.count=1(non testé)
Merci pour vos réponses.
J'ai mis un bouton sur ma page. L'utilisateur sélectionne une cellule et lorsqu'il clique, la ligne se supprime.
Mais comment puis-je faire une msgbox qui demande de confirmer la suppression de la ligne. De plus, j'aimerais savoir afficher la contenu de la première colonne dans la msgbox.
Merci encore.
J'ai mis un bouton sur ma page. L'utilisateur sélectionne une cellule et lorsqu'il clique, la ligne se supprime.
Mais comment puis-je faire une msgbox qui demande de confirmer la suppression de la ligne. De plus, j'aimerais savoir afficher la contenu de la première colonne dans la msgbox.
Merci encore.
J'ai réussi. Merci encore.
Je mets le code pour ceux que ça intéresse ou que ça pourrait aider :
Sub SuppressionLigneProjet()
Ligne = ActiveCell.Row
Colonne = ActiveCell.Column
Texte = Cells(Ligne, 1)
Dim Reponse
Reponse = MsgBox("Are you sure that you want to delete the project : '" & Texte & "'", vbYesNo + vbExclamation, "Delete confirmation")
Select Case Reponse
Case vbYes 'si clic sur oui
Cells(Ligne, 1).EntireRow.Delete shift:=xlUp
Case vbNo 'Si le bouton cliqué est non
'on ne fait rien et la msgbox se ferme
End Select
End Sub
Je mets le code pour ceux que ça intéresse ou que ça pourrait aider :
Sub SuppressionLigneProjet()
Ligne = ActiveCell.Row
Colonne = ActiveCell.Column
Texte = Cells(Ligne, 1)
Dim Reponse
Reponse = MsgBox("Are you sure that you want to delete the project : '" & Texte & "'", vbYesNo + vbExclamation, "Delete confirmation")
Select Case Reponse
Case vbYes 'si clic sur oui
Cells(Ligne, 1).EntireRow.Delete shift:=xlUp
Case vbNo 'Si le bouton cliqué est non
'on ne fait rien et la msgbox se ferme
End Select
End Sub
Yoskopolite
Messages postés
83
Date d'inscription
lundi 14 juillet 2008
Statut
Membre
Dernière intervention
9 novembre 2012
8
5 juil. 2010 à 13:26
5 juil. 2010 à 13:26
Bien vu.
Mais le "shift:=xlUp", ça correspond déjà au réglage par défaut, non ?
Mais le "shift:=xlUp", ça correspond déjà au réglage par défaut, non ?