Formule si=A1 sinon laisser utilisateur ecrire un résultat

davidweber -  
jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Je crée un fichier de suivi d'action à mener par les utilisateurs.
En cellule A1 j'ai un prix
en cellule A2 j'ai une liste déroulante qui propose augmentation du prix, diminution du prix ou maintien du prix
J'aimerais qu'en A3 si l'utilisateur à choisi maintien du prix alors le montant en A1 soit indiqué sinon qu'il puisse ecrire librement le nouveau prix.
Est ce possible? Si oui avec quel formule?

Merci

Configuration: Windows / Chrome 72.0.3626.109

1 réponse

  1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 833
     
    Bonjour,
    Avec une formule tu ne pourras pas.... car dès que l'utilisateur inscriras une valeur.. ça effacera la formule... et donc si il modifie à nouveau la valeur dans la liste....ça ne s'actualisera pas.
    La seule solution serait d'utiliser une petite macro (vba)....
    En utilisant l'évènement WorkSheet_Change
    https://docs.microsoft.com/fr-FR/office/vba/api/Excel.Worksheet.Change

    Je t'invite aussi à lire ceci : https://silkyroad.developpez.com/VBA/EvenementsFeuille/

    Dans cette fonction tu vérifies que la place modifiée correspond à celle de ta liste...

    Puis tu fais un IF pour choisir si il faut mettre la valeur de A1 ou laisser vide...

    Un truc du genre :
    Private Sub Worksheet_Change(ByVal Target As Range)
       If Intersect(Target, Range("A2")) Is Nothing Then Exit Sub
       
       If Target.Value="maintien" Then
          ActiveSheet.Range("A3").value = ActiveSheet.Range("A1").Value
       End If
    End Sub
    


    0