Exercice N° 4 - Création d'une fonction personnalisée


#1

Bonjour à tous

  • Dans cet exercice, le but est de créer une Fonction personnelle que l’on nommera “Commission()”
    dans le but de reproduire le montant de la commission
    Exemple: =Commission(B2) —> devra donner 9 600,00 €

  • L’exemple montre qu’avec une formule et en créant un tableau, cela est possible
    à condition que les plafonds soit dans l’ordre

  • Je précise qu’une Fonction (Function en VBA) doit se trouver impérativement dans un Module

Création Fonction.xlsx (11,5 Ko)


#2

Salut @Mimimathy, :wink:

Un essai dans le fichier joint Feuil2:

La fonction dans le module1:

Function Commission(Cel)

Application.Volatile 'Recalcul automatique

 If Cel >= 0 And Cel < 10000 Then
  Commission = Format(Cel * 8 / 100, "0.00 €")
Else
 If Cel > 10000 And Cel < 100000 Then
  Commission = Format(Cel * 12 / 100, "0.00 €")
Else
 If Cel > 100000 Then
  Commission = Format(Cel * 18 / 100, "0.00 €")

 End If
 End If
 End If
 
End Function

Création d’une fonction personnalisée V1.xlsm (18,8 Ko)


#3

Salut MDO,

Si je met la formule en D10 =somme(D2:D10) :thinking: J’ai 0,00 € :open_mouth:


#4

Re @Mimimathy,

Je me disais bien que c’était trop facile.

Dans ce cas peut-être au plus simple:

 Function Commission(Cel)

Application.Volatile 'Recalcul automatique

 If Cel >= 0 And Cel < 10000 Then
  Commission = Cel * 8 / 100
Else
 If Cel > 10000 And Cel < 100000 Then
  Commission = Cel * 12 / 100
Else
 If Cel > 100000 Then
  Commission = Cel * 18 / 100

 End If
 End If
 End If
 
End Function

Et mettre la colonne “C” au format monétaire.
Est-ce comme ça ?


#5

Re @Mimimathy,

Je ne l’avais jamais utilisé mais juste entendu parlé la " fonction IIf " du coup je l’ais utilisé pour la première fois, ça a l’air de fonctionner.

Function Commission(Cel)
'Fonction si vrai, si faux

Application.Volatile 'Recalcul automatique

    Commission = IIf(Cel < 0, 0, IIf(Cel >= 0 And Cel < 10000, Cel * 8 / 100, _
        IIf(Cel > 10000 And Cel < 100000, Cel * 12 / 100, Cel * 18 / 100)))

End Function

@+


#6

Re,

Et mes exercices sont trop compliqués :thinking:

C’est tout bon, une autre façon de faire avec les explications pour l’aide sur le Fx de la fonction

Création Fonction.xlsm (22,4 Ko)


#7

Re,

Bonjour @Mimimathy , @mdo100

Pour de bon ce n’est plus la peine de suivre les exercices @mdo100 vas beaucoup trop vite :wink: :+1:

Cdlt

@kiss6


#8

Re,

Oui mais tu as quand même trois solutions qui pourront de tirer d’un mauvais pas un jour ou l’autre :wink: