Afficher / Masquer Colonne selon le résultat d'un calcul (auto)

Résolu/Fermé
Leoventuras Messages postés 19 Date d'inscription vendredi 15 février 2013 Statut Membre Dernière intervention 30 mars 2020 - 25 avril 2014 à 15:15
Leoventuras Messages postés 19 Date d'inscription vendredi 15 février 2013 Statut Membre Dernière intervention 30 mars 2020 - 27 avril 2014 à 22:57
Bonjour,

Je suis actuellement entrain de créer un fichier Excel et j'aimerais qu'il soit le plus dynamique possible. J'ai une macro toute simple qui effectue la somme de plusieurs lignes et affiche ou masque des colonnes en fonctions du résultat (voir code ci-dessous).
Ce que je souhaiterais, c'est que la macro s'effectue en continue. Dès que l'on change un nombre, les colonnes se masquent ou s'affichent en fonction du résultat obtenu.

Est-il possible de faire çà ?

Sub Somme()

Range("B5").Select
ActiveCell.FormulaR1C1 = "=SUM(R[-4]C:R[-1]C)"
If Selection > 50 Then
Columns("E:F").Select
Selection.EntireColumn.Hidden = True
Else
Columns("D:G").Select
Selection.EntireColumn.Hidden = False
End If
Range("B5").Select
End Sub


Leoventuras

2 réponses

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
25 avril 2014 à 23:16
Bonjour,

En remplaçant ta macro par celle-ci cela devrait le faire :

Private Sub Worksheet_Calculate()
If Application.WorksheetFunction.Sum([B1:B4].Value) > 50 Then
Columns("E:F").EntireColumn.Hidden = True
Else
Columns("D:G").EntireColumn.Hidden = False
End If
End Sub
1
Leoventuras Messages postés 19 Date d'inscription vendredi 15 février 2013 Statut Membre Dernière intervention 30 mars 2020 1
27 avril 2014 à 22:57
Merci beaucoup gbinforme ce que je cherchais !!
0