IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Discussion :

Calcul de commissions évolutives avec une macro


Sujet :

VBA

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Contrôleur de gestion
    Inscrit en
    Mars 2014
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Contrôleur de gestion
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2014
    Messages : 35
    Points : 26
    Points
    26
    Par défaut Calcul de commissions évolutives avec une macro
    Bonjour à tous,
    Je suis débutant en VBA donc je vous demanderai par avance de ne pas m’en vouloir pour le manque de connaissances techniques et les lignes de codes que j’ai essayées de coder.
    Je tente de créer un outil Excel effectuant le calcul des commissions de nos vendeuses automatiquement et je vous avoue que je rencontre quelques problèmes…
    Je ne chercherai pas à vous demander comment automatiser l’import des données depuis notre logiciel professionnel car je travaille en Allemagne, il est en allemand et cela pose quelques problèmes car on ne peut pas faire grand-chose avec.
    Ma question concerne juste les commissions et comment ne pas se perdre dans les conditions if elseif etc….

    Tout d’abord, concernant notre plan de rémunération (détails dans le fichier ci-joint):
    • Nos vendeuses peuvent voir leur statut varier entre 4 niveaux en fonction de leur chiffre d’affaire personnel et celui de leurs équipes directe et indirecte. Nous les appellerons niveau 1, 2, 3 et 4.
    • Nous avons 4 type de commissions, à savoir la commission sur les ventes personnelles net (CE), la commission d’animation directe (CAD), la commission d’animation indirecte (CAI), la commission groupe détaché (CDG).
    • Les ventes personnelles concernent la vendeuse intéressée et les ventes du groupe net correspondent à la somme des ventes personnelles, des ventes de l’équipe directe et des ventes de l’équipe indirecte

    Voici ce que j’ai commencé à faire mais je suis quasiment sur que j’ai tout faut, dc si vous avez des conseils a me donner, je suis preneur :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    Sub Com()
            'Dèclaration des variables
            Dim periode As Date, prenom As String, nom As String, numerofg As Integer, qualification As String, qualificationm_1 As String
            Dim vpn As Integer, vedn As Integer, vein As Integer, vgn As Integer
            Dim ce As Integer, cad As Integer, cai As Integer, cdg As Integer
     
            periode = Range("K2")
            prenom = Range("K3")
            nom = Range("K4")
            numerofg = Range("K5")
            qualification = Range("K6")
            qualificationm_1 = Range("K7")
     
            vpn = Range("H10")
            vedn = Range("H19")
            vein = Range("H28")
            vgn = Range("H30")
     
            ce = Range("G11")
            cad = Range("G20")
            cai = Range("G29")
            cdg = Range("G31")
     
            'Cas Fun Girl/boy
            If vpn >= 0 Then
                'Qualification
                qualification = "FUN GIRL/BOY"
                'Commissions d'animation indirecte
                Range("G29") = 0.02
                'Commissions d'animation directe
                Range("G20") = 0.05
                'Commissions évolutives
                If vpn >= 0 And vpn <= 900 Then
                Range("G11") = 0.25
                ElseIf vpn > 900 And vpn <= 2400 Then
                Range("G11") = 0.27
                ElseIf vpn > 2400 And vpn <= 4900 Then
                Range("G11") = 0.28
                ElseIf vpn > 4900 Then
                Range("G11") = 0.31
                End If
     
            'Cas Fun Lady/lord
            ElseIf vpn >= 300 And vpn < 400 And vgn >= 1500 And vgn < 2000 Then
                'Qualification
                qualification = "FUN LADY/LORD"
                'Commissions d'animation indirecte
                Range("G29") = 0.03
                'Commissions d'animation directe
                If vedn > 0 And vedn <= 2400 Then
                Range("G20") = 0.07
                ElseIf vedn > 900 And vedn <= 2400 Then
                Range("G20") = 0.08
                ElseIf vedn > 2400 And vedn <= 4900 Then
                Range("G20") = 0.09
                End If
                'Commissions évolutives
                If vpn >= 300 And vpn <= 900 Then
                Range("G11") = 0.27
                ElseIf vpn > 900 And vpn <= 2400 Then
                Range("G11") = 0.28
                ElseIf vpn > 2400 And vpn <= 4900 Then
                Range("G11") = 0.31
                ElseIf vpn > 4900 Then
                Range("G11") = 0.34
                End If
     
            'Cas Fun Duchess/duke
            ElseIf vpn >= 400 And vgn >= 2000 Then
                'Qualification
                qualification = "FUN DUCHESS/DUKE"
                'Commissions d'animation indirecte
                Range("G29") = 0.04
                'Commissions d'animation directe
                If vedn > 0 And vedn <= 2400 Then
                Range("G20") = 0.09
                ElseIf vedn > 900 And vedn <= 2400 Then
                Range("G20") = 0.1
                ElseIf vedn > 2400 And vedn <= 4900 Then
                Range("G20") = 0.11
                End If
                'Commissions évolutives
                If vpn >= 400 And vpn <= 900 Then
                Range("G11") = 0.28
                ElseIf vpn > 900 And vpn <= 2400 Then
                Range("G11") = 0.3
                ElseIf vpn > 2400 And vpn <= 4900 Then
                Range("G11") = 0.34
                ElseIf vpn > 4900 Then
                Range("G11") = 0.4
                End If
     
            'Cas Fun Queen/king
            Else
                'Qualification
                qualification = "FUN QUEEN/KING"
     
            End If
     
    End Sub
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. [VBA-E] Exporter un fichier Web avec une macro
    Par Wilgard dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 22/05/2006, 12h25
  2. tableau dynamique excel crée avec une macro
    Par alex_95 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 20/03/2006, 12h01
  3. [Excel]Faire une somme avec une macro
    Par Chlo dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 13/01/2006, 19h53
  4. Connaître la taille d'un module avec une macro VBA ou autre
    Par beegees dans le forum Général VBA
    Réponses: 15
    Dernier message: 22/11/2005, 09h47
  5. [VBA Excel] ecrire le caractere " avec une macro
    Par oktopuces dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 09/09/2005, 22h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo