Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Mise a jour du résultat d'une formule sur valeurs issues d'un Userform

NicolasBB

XLDnaute Nouveau
Bonjour à toutes et à tous,

Je ne pense pas être très explicite avec mon titre, je vous expose donc mon problème :

J'utilise un Userform pour rentrer des données dans un tableau. Ces données sont ensuite analysées par une formule située sur la même feuille que le tableau de données (une simple formule moyenne).

Seulement, lors de l'ajout de valeurs dans le tableau par le Userform (qui lui fonctionne parfaitement), le résultat de ma moyenne ne se mets pas à jour tout seul. Il faut que je rentre dans la cellule puis la revalide avec [Enter] afin de mettre à jour le résultat. (??)

Evidemment mes options sont sur le calcul de la feuille automatique, et j'ai même ajouté dans le userform, pour tester, le code pour recalculer la feuille automatiquement a la fin du calcul.

Je suis donc un peu dans le flou.. Si vous avez des idées elle seraient les bienvenues.

Pour information, voici le code du userform servant à l'import des données :
Code:
Private Sub energie_ajout_Click()
Dim Arr, L As Long, C As Integer

    If Me.liste_energie = "" Then
        MsgBox "N'oubliez pas de selectionner un compteur !"
        Exit Sub
    End If
    
    If Me.liste_energie = "Choisir un compteur d'énergie" Then
        MsgBox "N'oubliez pas de selectionner un compteur !"
        Exit Sub
    End If
        

    If Not IsDate(Me.date_energie) Then
        MsgBox "N'oubliez pas de rentrer une date correcte !"
        Exit Sub
    End If

        With Worksheets("DATA2")
        If Me.valeur_energie <> "" And IsNumeric(valeur_energie) Then
            For i = 1 To 20
                If .Cells(1, i).Value = Me.liste_energie Then
                .Cells(Rows.Count, i + 1).End(xlUp).Offset(1, 0).Value = Me.valeur_energie
                .Cells(Rows.Count, i).End(xlUp).Offset(1, 0).Value = Me.date_energie
                End If
            Next i
        Else: MsgBox "La valeur rentrée n'est pas correcte!"
        Exit Sub
        End If
        Worksheets("DATA2").Calculate
        MsgBox "la valeur a été ajoutée à la base"
        End With

End Sub

Merci par avance de vos réponses
 

Pierrot93

XLDnaute Barbatruc
Re : Mise a jour du résultat d'une formule sur valeurs issues d'un Userform

Bonjour,

A tout hasard, manque peut être ":" :
Code:
Else: MsgBox "La valeur rentrée n'est pas correcte!": Exit Sub

bon après midi
@+
 

NicolasBB

XLDnaute Nouveau
Re : Mise a jour du résultat d'une formule sur valeurs issues d'un Userform

Bonjour Pierrot,

La macro dans le USF fonctionne bien, je ne pense pas que le problème soit la, la valeur rentée dans l'USF est bien ensuite rentrée dans la feuille de données. C'est ma formule de moyenne sur la feuille qui ne se mets pas à jour, il faut qu'une fois l'USF fermé, je re-rentre dans la cellule où la valeur qui provient de l'USF vient d'être ajoutée, puis que j'appuie sur Entrée pour que ma formule de moyenne toute bête se mette à jour..

Des idées ?
 

Pierrot93

XLDnaute Barbatruc
Re : Mise a jour du résultat d'une formule sur valeurs issues d'un Userform

Re,

as tu essayé de relancé le calcul via l'événement "deactivate" de l'usf :
Code:
Private Sub UserForm_Deactivate()
Worksheets("DATA2").Calculate
End Sub
 

NicolasBB

XLDnaute Nouveau
Re : Mise a jour du résultat d'une formule sur valeurs issues d'un Userform

Bonjour et merci pour vos réponses mais non cela ne marche toujours pas.
J'ai mis en PJ le fichier. je vous propose donc de faire la démarche suivante :


  • Ouvrir l'USF, selectionnez "electricité", la date "15/01/2013" puis la valeur "50" et OK.
  • La valeur est donc ajoutée sur la feuille DATA2.
  • Maintenant sur cette même feuille déplacez vous vers la gauche et allez voir la cellule AW2 (c'est une formule matricielle dedans mais meme avec une moyenne ca ne marche pas) qui indiquera une erreur car la cellule penser qu'aucune valeur n'a été entrée..
  • Maintenant si vous entrez en cellule B3 (la cellule dans laquelle il y a la valeur 50) et que vous appuyez sur entrée, la formule en AW2 se sera mis à jour..

Bizarre bizarre mais merci encore d'avance pour votre aide
 

Pièces jointes

  • TRAVAIL - test.xlsm
    607.3 KB · Affichages: 81

NicolasBB

XLDnaute Nouveau
Re : Mise a jour du résultat d'une formule sur valeurs issues d'un Userform

Bonjour Jean Marcel,

J'ai l'impression qui tu as exactement réussi a faire ce que je voulais !
Donc il fallait rajouter ce "CDbl(..)" ?

En tout cas ca marche et je t'en remercie énormément
 

NicolasBB

XLDnaute Nouveau
Re : Mise a jour du résultat d'une formule sur valeurs issues d'un Userform

Merci pour le memo, je pensais aussi a un moment à une histoire de format..
Tu me confirmes que c'est "Cdate" pour convertir en date ?

Merci encore
 

Discussions similaires

Réponses
5
Affichages
198
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…