Faire intervenir l'utilisateur

Résolu/Fermé
thyroox Messages postés 34 Date d'inscription jeudi 27 juillet 2017 Statut Membre Dernière intervention 25 février 2022 - 20 sept. 2017 à 16:09
thyroox Messages postés 34 Date d'inscription jeudi 27 juillet 2017 Statut Membre Dernière intervention 25 février 2022 - 22 sept. 2017 à 09:41
Bonjour la communauté,


J'ai écrit cette petite macro afin de supprimer toutes les lignes dont les cellules de la colonne 7 est inférieure au 01/01/2017

 Sub PRIX()

'supprime les lignes lorsque la cellule fin de mission est inférieur au 01/01/2017

    Dim lig As Long
    
    For lig = [G65536].End(xlUp).Row To 2 Step -1
    
    
    If Cells(lig, 7) < #1/1/2017# Then Rows(lig).Delete
    
    Next lig
    
End Sub




Cependant j'aimerai que l'utilisateur puisse choisir la colonne à sa guise avec un message qui s'affiche et qu'il n'ai qu'a rentrer la valeur. Merci de bien vouloir me dire quoi faire et si possible m'expliquer pour que je puisse reproduire l'action.


je vous remercie pour votre aide.


Thyroox

2 réponses

f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
Modifié le 21 sept. 2017 à 08:07
Bonjour,

l'utilisateur puisse choisir la colonne à sa guise
Oui, par quel moyen....???
Chaque colonne a un format different ....??
0
Bonjour,

Avec La commande Inputbox,

Les colonnes ont toutes le Meme formalisme.

Merci de votre aide
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
21 sept. 2017 à 08:14
Re,

Avec La commande Inputbox,
Pour le choix de la colonne, elle apparait comment cette chose ???????
0
thyroox Messages postés 34 Date d'inscription jeudi 27 juillet 2017 Statut Membre Dernière intervention 25 février 2022 1 > f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024
21 sept. 2017 à 12:13
Re,

Sub PRESTAAA()

'supprime les lignes lorsque la cellule fin de mission est inférieur au 01/01/2017

    Dim lig As Long
    Dim Nom As String
    
    
    For lig = [G65536].End(xlUp).Row To 2 Step -1
    
    Nom = InputBox("Veuillez renseigner la colonne que vous souhaitez traiter", "Information")
    If Cells(lig, Nom) < #1/1/2017# Then Rows(lig).Delete
        
    Next lig
    
End Sub


J'ai fait ce test mais j'ai ce message d'erreur : "erreur d'exécution 1004", erreur défini par l'application ou par l'objet'.
0
thyroox Messages postés 34 Date d'inscription jeudi 27 juillet 2017 Statut Membre Dernière intervention 25 février 2022 1 > thyroox Messages postés 34 Date d'inscription jeudi 27 juillet 2017 Statut Membre Dernière intervention 25 février 2022
21 sept. 2017 à 12:17
Après quelques recherches je me rends compte qu'il faut peut être utilisé un Userform ?
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701 > thyroox Messages postés 34 Date d'inscription jeudi 27 juillet 2017 Statut Membre Dernière intervention 25 février 2022
21 sept. 2017 à 12:28
Re,
Oui et non, mais vous ne dites toujours pas comment cette userform va apparaitre, un clic quelque part ou .......
0
thyroox Messages postés 34 Date d'inscription jeudi 27 juillet 2017 Statut Membre Dernière intervention 25 février 2022 1 > f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024
21 sept. 2017 à 12:40
Re,

Lorsque l'utilisateur lancera la macro que j'ai transmis initialement, alors l'UserForm s'ouvrira, de ce fait l'utilisateur renseignera un numéro de colonne qui impactera alors cet élément : Cells(lig, 7)

Merci de votre aide :)
0