Macro de Contrôle de cellules

  • Initiateur de la discussion Initiateur de la discussion Xav35
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

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
 
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+
 
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
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
508
  • Question Question
Microsoft 365 Problème de date
Réponses
5
Affichages
168
Retour