Code VBA
saly
-
tessel75 -
tessel75 -
Bonjour,
J'ai un petit soucis aavec mon code VBA
je veux utiliser la fonction IF et affecter la valeur obtenue à une cellule nommé priorité
le champs priorité est conditionné par deux autres champs nommés result et urgence. voici le code:
Public Function Implication(result As Double, Urgence As String) As String
Dim Priorité As String
If result = 1 And Urgence = normal Then Priorité = faible
If result = 1 And Urgence = urgent Then Priorité = faible
If result = 2 And Urgence = normal Then Priorité = faible
If result = 2 And Urgence = urgent Then Priorité = faible
If result = 3 And Urgence = normal Then Priorité = haute
If result = 3 And Urgence = urgent Then Priorité = haute
If result = 4 And Urgence = normal Then Priorité = haute
If result = 4 And Urgence = urgent Then Priorité = haute
If result = 5 And Urgence = normal Then Priorité = haute
If result = 5 And Urgence = urgent Then Priorité = haute
Implication = Priorité
End Function
Private Sub priorité_AfterUpdate()
Implication
End Sub
J'ai même changé la source contrôle dans les propriétés de la cellule "priorité" t j'ai mis comme source la fonction Implication mais ça ne marche pas .
Si quelqu'un peut m'aider ça sera vraiment gentil
J'ai un petit soucis aavec mon code VBA
je veux utiliser la fonction IF et affecter la valeur obtenue à une cellule nommé priorité
le champs priorité est conditionné par deux autres champs nommés result et urgence. voici le code:
Public Function Implication(result As Double, Urgence As String) As String
Dim Priorité As String
If result = 1 And Urgence = normal Then Priorité = faible
If result = 1 And Urgence = urgent Then Priorité = faible
If result = 2 And Urgence = normal Then Priorité = faible
If result = 2 And Urgence = urgent Then Priorité = faible
If result = 3 And Urgence = normal Then Priorité = haute
If result = 3 And Urgence = urgent Then Priorité = haute
If result = 4 And Urgence = normal Then Priorité = haute
If result = 4 And Urgence = urgent Then Priorité = haute
If result = 5 And Urgence = normal Then Priorité = haute
If result = 5 And Urgence = urgent Then Priorité = haute
Implication = Priorité
End Function
Private Sub priorité_AfterUpdate()
Implication
End Sub
J'ai même changé la source contrôle dans les propriétés de la cellule "priorité" t j'ai mis comme source la fonction Implication mais ça ne marche pas .
Si quelqu'un peut m'aider ça sera vraiment gentil
A voir également:
- Code VBA
- Code ascii - Guide
- Code puk bloqué - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Code activation windows 10 - Guide
- Code blocks - Télécharger - Langages
2 réponses
Bonsoir,
Pourquoi faire simple quand on peut faire tellement plus compliqué, n'est ce pas?
A te lire, il parait sauter aux yeux que :
If result <3 Then
Priorité = "faible"
ElseIf result > 2 then
Priorité = "haute"
End if
Déjà les compléments à la condition ne servent à rien, au moins dans ton expression. Ensuite il faudrait ne pas oublier les guillemets sinon VBA comprendra que "Faible" et "Haute" sont des paramètres internes à la procédure et non pas des valeurs. Enfin j'ai utilisé "Result" mais sans savoir ce que c'est? Tu ne le dis pas; pourtant ça pourrait rendre service.
Enfin tu écris :
"Public Function Implication(result As Double, Urgence As String) As String
... ... Tatatata ... ...
Implication = Priorité
End Function
Private Sub priorité_AfterUpdate()
Implication
End Sub "
Pourquoi ne pas écrire directement
"If ... then Implication = "Faible" ou "Forte" "
Et pourquoi une fonction et une procédure Sub ? Pourquoi ne pas utiliser la fonction directement dans ton formulaire ou ton état.
Bonne suite.
Pourquoi faire simple quand on peut faire tellement plus compliqué, n'est ce pas?
A te lire, il parait sauter aux yeux que :
If result <3 Then
Priorité = "faible"
ElseIf result > 2 then
Priorité = "haute"
End if
Déjà les compléments à la condition ne servent à rien, au moins dans ton expression. Ensuite il faudrait ne pas oublier les guillemets sinon VBA comprendra que "Faible" et "Haute" sont des paramètres internes à la procédure et non pas des valeurs. Enfin j'ai utilisé "Result" mais sans savoir ce que c'est? Tu ne le dis pas; pourtant ça pourrait rendre service.
Enfin tu écris :
"Public Function Implication(result As Double, Urgence As String) As String
... ... Tatatata ... ...
Implication = Priorité
End Function
Private Sub priorité_AfterUpdate()
Implication
End Sub "
Pourquoi ne pas écrire directement
"If ... then Implication = "Faible" ou "Forte" "
Et pourquoi une fonction et une procédure Sub ? Pourquoi ne pas utiliser la fonction directement dans ton formulaire ou ton état.
Bonne suite.