• Initiateur de la discussion Initiateur de la discussion audrey
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

A

audrey

Guest
bonjour le forum

j'ai un problème tout bête.

j'envoie une valeur en string dans la case B37. j'aimerais que si cette valeur est "inactif" la case prenne la valeur 2 si c'est "actif"la valeur 1 sinon la valeur 3.
le problème est que c'est tjs le sinon qui est pris en compte

If Sheets("saisie").Range("B37").Value = "inactif" Then
sheets("saisie").range(B37").value=2
Else
If Sheets("saisie").Range("B37").Value = "actif" Then
Sheets("saisie").Range("B37").Value = 1
Else
Sheets("saisie").Range("B37").Value = 3
End If
End If

merci d'avance
 
Bonjour Audrey


Select Case LCase(Worksheets("saisie").Range("B37"))
Case "inactif"
Worksheets("saisie").Range("B37") = 2
Case "actif"
Worksheets("saisie").Range("B37") = 1
Case Else
Worksheets("saisie").Range("B37") = 3
End Select


Bi ++
 
If LCase(Sheets("saisie").Range("B37")).Value = "inactif" Then
Sheets("saisie").Range("B37").Value = 2
Else
If LCase(Sheets("saisie").Range("B37")).Value = "actif" Then
Sheets("saisie").Range("B37").Value = 1
Else: Sheets("saisie").Range("B37").Value = 4
End If
End If
 
Bonjour a tous

Audrey, Voila plusieur possibilité:

<b>Possibilité 1:</b>

Sub Audrey()
Select Case LCase(Trim(Sheets("saisie").Range("B37").Value))
Case Is = "inactif"
Sheets("saisie").Range("B37").Value = 2
Case Is = "actif"
Sheets("saisie").Range("B37").Value = 1
Case Else
Sheets("saisie").Range("B37").Value = 3
End Select
End Sub


<b>Possibilité 2:</b>

Dans ta feuille "Saisie" tu mets une macro evenementielle qui corrige ton entré en B37:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$B$37" Then Exit Sub
Target.Value = LCase(Trim(Target))
End Sub

Cela supprimera automatiquement les espaces et mettra le tous en minuscule:

Le reste de ton code sera le suivant alors:

Sub Audrey()
Select Case Sheets("saisie").Range("B37").Value
Case Is = "inactif"
Sheets("saisie").Range("B37").Value = 2
Case Is = "actif"
Sheets("saisie").Range("B37").Value = 1
Case Else
Sheets("saisie").Range("B37").Value = 3
End Select
End Sub


Voila

@Christophe@
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
4
Affichages
332
Réponses
2
Affichages
114
Retour