Saisie Algorithme en VBA

Résolu/Fermé
didy-star Messages postés 8 Date d'inscription mercredi 23 octobre 2013 Statut Membre Dernière intervention 4 mars 2018 - Modifié le 3 mars 2018 à 18:44
 Utilisateur anonyme - 5 mars 2018 à 16:51
Bonjour à tous,

Bon je suis nulle en informatique, mais je dois saisir un algorithme en VBA.
Je suis donc dans mon logiciel, je rentre mon algorithme mais ça marche pas !
Plein de problèmes que je n'arrive pas à résoudre... Au niveau de la syntaxe, des fins d'instructions, bref des trucs qui me sont totalement inconnus !

Voici mon algorithme :

Public Function Commission(CA As Double)

'Fonction qui calcule la commission du représentant selon le barême par tranche

If CA < 2500 Then
Commission = 2500 * 25
Elself CA < 5000 Then
Commission = 2500 * 0.025 + (CA - 2500) * 0.05
Else
Commission = 2500 * 0.025 + 2500 * 0.05 + (CA - 5000) * 0.07
End If

End Function


La première ligne est surlignée en jaune. Et apparemment toute mes autres lignes ont des erreurs de syntaxe... Pas besoin de préciser que mon truc ne fonctionne pas, bref !

Merci de m'éclairer ! (et d'éviter les mots trop complexes :D )

EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.
A voir également:

4 réponses

NHenry Messages postés 15173 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 21 décembre 2024 350
3 mars 2018 à 18:46
J'ai ajouté la coloration syntaxique et déjà, le "Elself" est suspect, je pense que tu as mis un L à la place d'un i.
1
didy-star Messages postés 8 Date d'inscription mercredi 23 octobre 2013 Statut Membre Dernière intervention 4 mars 2018
3 mars 2018 à 23:06
Le Eiself apparaît en erreur de syntaxe...
0
Utilisateur anonyme
4 mars 2018 à 00:08
Ben là je n’ai pas office sous la main, j’ai donc essayé sur un site de code en ligne, à part le ElseIf (avec un i majuscule) tout a compilé.
1
didy-star Messages postés 8 Date d'inscription mercredi 23 octobre 2013 Statut Membre Dernière intervention 4 mars 2018
4 mars 2018 à 09:30
Ah c'est bon merci !
Mais quelle horreur ces algorithmes haha
0
Utilisateur anonyme
4 mars 2018 à 10:22
Alors tu peux marquer le sujet résolu
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#marquer-un-sujet-resolu

Le code peut gagner en rapidité en évitant les calculs inutiles (si tu mets cette fonction sur 1000 ligne ça peut être un gain de temps sensible)

Public Function Commission(CA As Double)

'Fonction qui calcule la commission du représentant selon le barême par tranche

If CA < 2500 Then
    Commission = CA * 0.025
ElseIf CA < 5000 Then
     '2500 * 0.025 c'est une constante, si on mets la valeur de la constante on évite une multiplication
    Commission = 62.5 + (CA - 2500) * 0.05
Else
    'et là 2 multiplications et une addition
    Commission = 187.5+ (CA - 5000) * 0.07
End If

End Function
0
Utilisateur anonyme
3 mars 2018 à 18:51
Bonjour,
Merci nhenri pour la couleur.
En plus du elseif.
Tu as écrit que pour un ca inférieur à 2500, la commission est de 2500* 25.
Donc le vendeur qui a un ca de 100 a la même somme que celui qui a un ca de 2499, et cette somme est 62 500. C’est une belle commission non?
0
didy-star Messages postés 8 Date d'inscription mercredi 23 octobre 2013 Statut Membre Dernière intervention 4 mars 2018
Modifié le 3 mars 2018 à 22:59
!! Oui en effet, je l'ai changé, mais ça ne résoud pas mon problème de phrase jaune...
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
Modifié le 5 mars 2018 à 09:44
bonjour,

avec des IF en cascade , il vaut mieux utiliser Select case

voir


0
Utilisateur anonyme
5 mars 2018 à 12:07
Bonjour,
Oui c’est vrai quand il y a beaucoup de if. Là il n’y en que 3 et comme elle débute, je ne lui en ai pas parlé
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
5 mars 2018 à 14:28
Bonjour
même à 3 , ça vaut le coup!
remarque au passage: ne confond t elle pas algo et prog ? (pas grave)
0
Utilisateur anonyme > michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023
5 mars 2018 à 16:51
Si elle confond
0