Sommes avec variables
Bonjour,
Je cherche à réaliser à l'aide d'une macro une somme en ligne avec une variable qui n'est pas défini dans mon classeur excel.
Dans la colonne B j'ai un certain nombre de valeur. Et dans les colonnes C, D et E j'ai créé une formule du type =$B+X
Où X prend respectivement la valeur 25, 50 et 90.
Cependant je souhaite passer par une macro car je désire qu'en fonction de la valeur de la cellule B, X prenne une valeur différente.
En effet, X devra pouvoir prendre un certain nombre de valeur ( une vingtaine environ en tout et pour tout). Dois-je créer une variable pour chacune de ces valeurs?
Par exemple:
- si B3 est compris entre 1 et 10 alors la valeur de C3 serait de : B3+10
- si B5 est compris entre 11 et 20 alors la valeur de C5 serait de : B5+15
etc
( Où 10 et 15 ici, représentent les variables à mettre à la place de X )
Évidemment si on modifie la valeur de B3 et qu'elle est maintenant comprise entre 11 et 20 alors il faut qu'on obtienne B3+15 (fin exemple)
De même pour les colonnes D et E avec des valeurs différentes bien entendu.
Voilà. Je vous demande de l'aide quant à la mise en place d'un code VBA me permettant de faire ce genre de somme sur un tableau de plus de 200 lignes.
J'espère avoir été assez clair dans mes explications. Je vous remercie par avance de votre aide.
Damien
Bonjour,
Tu peux te faire une fonction perso comme par exemple celle-ci à adapter à tes besoins (à mettre dans un module standard) :
Function ValeurX(Cel As Range)
Select Case Cel.Value
Case 1 To 10: ValeurX = 10
Case 11 To 20: ValeurX = 15
Case 21 To 30: ValeurX = 25
Case 31 To 40: ValeurX = 35
Case Else: ValeurX = "#VALEUR!"
End Select
End Functionque tu appelles dans Excel de cette façon : =ValeurX(B3)
Merci pour cet élément de réponse. Je peux désormais mettre en place les différents cas de figure.
Par contre ce que je veux c'est ajouter cette valeur à celle de la valeur B et l'afficher dans C, D et E. Chacune de ses colonnes sont un seuil de tolérance.
Je vais essayer de faire clair à l'aide d'un exemple concret.
En admettant que B3 = 5
je désire un premier seuil de tolérance en C. Soit C3 = B3 + valeurX
Mais aussi un seul de tolérance maximal en D. Soit D3 = B3 + ValeurY
Et enfin un seuil de tolérance dangereux en E. Soit E3 = B3 + ValeurZ
Ceci étant fait il doit être applicable pour chacune des valeurs donc de B3 à B267 ( tableau susceptible d'être modifié en nombre de ligne)
J'espère avoir été plus clair dans mes propos. Et vous remercie encore pour votre réponse.