Macro de Contrôle de cellules

Xav35

XLDnaute Nouveau
Bonjour à tous,

Je suis en train de créer un petit outil à destination de vendeurs... Cet outil à pour but de sortir un prix au final.
Je voudrais ajouter un petit contrôle pour que le nombre d'option ne puisse pas dépasser le nombre d'accès internet en affichant un MsgBox.
Exemple, si j'ai 5 accès Internet, je ne peux pas avoir 6 options du même type...
J'ai bidouillé ce code... En sachant bien qu'il n'est pas parfait.... Merci de vos retours.

If Range("B40") + Range("B41") > Range("B30") + Range("B31") + Range("B32") + Range("B33") Then
MsgBox "ATTENTION : Le nombre d'option Optimisation ne peut pas être supérieur au nombre d'accès"
End If

If Range("B43") > Range("B35") + Range("B36") + Range("B37") + Range("B38") Then
MsgBox "ATTENTION : Le nombre d'option Optimisation LAN ne peut pas être supérieur au nombre d'équipements"
End If

If Range("B45") + Range("B46") + Range("B47") + Range("B48") > Range("B30") + Range("B31") + Range("B32") + Range("B33") Then
MsgBox "ATTENTION : Le nombre d'option Proactivité ne peut pas être supérieur au nombre d'accès"
End If

If Range("B50") + Range("B51") > Range("B35") + Range("B36") + Range("B37") + Range("B38") Then
MsgBox "ATTENTION : Le nombre d'option Proactivité LAN ne peut pas être supérieur au nombre d'équipements"
End If

If Range("B53") > Range("B30") + Range("B31") + Range("B32") + Range("B33") Then
MsgBox "ATTENTION : Le nombre d'option Disponibilité ne peut pas être supérieur au nombre d'accès"
End If
 
G

Guest

Guest
Re : Macro de Contrôle de cellules

Bonjour,

Ce serait mieux en connaissant exactement de quoi il retourne, avec un fichier mais en général ce genre de test ce fait:

soit comme ceci:
Code:
    Select Case True
    Case Range("B40") + Range("B41") > Range("B30") + Range("B31") + Range("B32") + Range("B33")
        MsgBox "ATTENTION : Le nombre d'option Optimisation ne peut pas être supérieur au nombre d'accès"
    Case Range("B43") > Range("B35") + Range("B36") + Range("B37") + Range("B38")
        MsgBox "ATTENTION : Le nombre d'option Optimisation LAN ne peut pas être supérieur au nombre d'équipements"
    Case Range("B45") + Range("B46") + Range("B47") + Range("B48") > Range("B30") + Range("B31") + Range("B32") + Range("B33")
        MsgBox "ATTENTION : Le nombre d'option Proactivité ne peut pas être supérieur au nombre d'accès"
    Case Range("B50") + Range("B51") > Range("B35") + Range("B36") + Range("B37") + Range("B38")
        MsgBox "ATTENTION : Le nombre d'option Proactivité LAN ne peut pas être supérieur au nombre d'équipements"
    Case Range("B53") > Range("B30") + Range("B31") + Range("B32") + Range("B33")
        MsgBox "ATTENTION : Le nombre d'option Disponibilité ne peut pas être supérieur au nombre d'accès"
    End Select

Ou plus souvent comme cela:
Code:
    If Range("B40") + Range("B41") > Range("B30") + Range("B31") + Range("B32") + Range("B33") Then
        MsgBox "ATTENTION : Le nombre d'option Optimisation ne peut pas être supérieur au nombre d'accès"
    ElseIf Range("B43") > Range("B35") + Range("B36") + Range("B37") + Range("B38") Then
        MsgBox "ATTENTION : Le nombre d'option Optimisation LAN ne peut pas être supérieur au nombre d'équipements"
    ElseIf Range("B45") + Range("B46") + Range("B47") + Range("B48") > Range("B30") + Range("B31") + Range("B32") + Range("B33") Then
        MsgBox "ATTENTION : Le nombre d'option Proactivité ne peut pas être supérieur au nombre d'accès"
    ElseIf Range("B50") + Range("B51") > Range("B35") + Range("B36") + Range("B37") + Range("B38") Then
        MsgBox "ATTENTION : Le nombre d'option Proactivité LAN ne peut pas être supérieur au nombre d'équipements"
    ElseIf Range("B53") > Range("B30") + Range("B31") + Range("B32") + Range("B33") Then
        MsgBox "ATTENTION : Le nombre d'option Disponibilité ne peut pas être supérieur au nombre d'accès"
    End If

A+
 

Xav35

XLDnaute Nouveau
Re : Macro de Contrôle de cellules

OK, merci, ça fonctionne aussi... Y'a-t-il plus simple que :
If Range("B40") + Range("B41") > Range("B30") + Range("B31") + Range("B32") + Range("B33")

si on voulait remplacer les + par une formule "somme" ?

Cordialement
 

Discussions similaires

Statistiques des forums

Discussions
312 302
Messages
2 087 041
Membres
103 439
dernier inscrit
julienpipiou