Transformer formules en valeur

eutrophisation

XLDnaute Occasionnel
Bonjour tout le monde.
Pourrriez m'aider à résoudre ce probleme.
J'ai une plage B7:BX3000 chargée de formules et de valeurs. J'aimerais que si l'une des cellules de la colonne D7:D3000 contient le mot "vérifiée" toutes les cellules de la ligne de la plage citée ci dessus contenant des formules se transforment en valeur. Ceci pour alléger ma feuille sachant que des formules sont anticipées dans ma plage. Les calculs se font automatiquement au fur et à mesure que mes données sont saisies. Ma plage est partagée en deux parties l'une d'elle pour saisir des valeurs et l'autre pour effectuer les calculs.
Ex: Si dans la cellule D20 de la ligne D20:DX20 de la plage ne contient pas le mot "vérifiée" les FORMULES se trouvant dans cellules de la ligne reste telle qu'elles sont c'est à dire les formules ne se transforment pas en valeurs par contre si dernière "D20" contient le mot "vérifiée" les formules se transforment en valeurs et ainsi de suite pour les autres cellules de la colonne D7:D300. Merci d'avance.
Les calculs se font automatiquement au fur et à mesure que mes données sont saisies. Ma plage est partagée en deux parties l'une d'elle pour saisir des valeurs et l'autre pour effectuer les calculs.
 

pierrejean

XLDnaute Barbatruc
Bonjoue eutrophisation

A mettre dans le module de la feuille :

Code:
Private Sub Worksheet_Activate()
tablo = Range("D1:D3000")
For n = 7 To UBound(tablo, 1)
   If tablo(n, 1) = "vérifiée" Then
      Application.EnableEvents = False
           Rows(n).Value = Rows(n).Value
       Application.EnableEvents = True
   End If
Next
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("D7:D3000")) Is Nothing Then
   If Target.Value = "vérifiée" Then
       Application.EnableEvents = False
           Rows(Target.Row).Value = Rows(Target.Row).Value
       Application.EnableEvents = True
   End If
End If
End Sub

[/cxode]

et dans un module general

[code]
Sub retour()
Application.EnableEvents = True
End Sub

A utiliser si une erreur survient
 

Discussions similaires

Statistiques des forums

Discussions
312 084
Messages
2 085 194
Membres
102 812
dernier inscrit
abdouami