XL 2016 mise à jour en temps réel d'un textbox

  • Initiateur de la discussion Initiateur de la discussion halecs93
  • 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 !

halecs93

XLDnaute Impliqué
Bonjour à toutes et à tous

Je n'arrive pas à mettre à jour en temps réel la valeur de mon Textbox3. Celui-ci est sensé récupéré la valeur de G3, valeur qui, elle, se met à jour en fonction de cases cochées.

Un grand merci.

1742727391612.png
 

Pièces jointes

Hello

une proposition en PJ
1) sortir de l'initialize, la partie qui met à jour le textbox==> déplacé dans la macro "MajDuréeSet"
2) dans l'évènement _calculate de la feuille, appel à cette macro

==> je ne sais pas si c'est la meilleure solution, mais de ce que j'ai vu, ca fonctionne (que le formulaire soit lancé ou pas)
 

Pièces jointes

Hello

une proposition en PJ
1) sortir de l'initialize, la partie qui met à jour le textbox==> déplacé dans la macro "MajDuréeSet"
2) dans l'évènement _calculate de la feuille, appel à cette macro

==> je ne sais pas si c'est la meilleure solution, mais de ce que j'ai vu, ca fonctionne (que le formulaire soit lancé ou pas)
Hello... ça me semble fonctionnel. Merci beaucoup.
 
re
ou tu gère tout dans le userform
et tu fais plus simple
je te montre le debut du code de ton userform
VB:
Option Explicit
Dim StartTime As Double
Dim Running As Boolean
Dim PauseTime As Double
Public WithEvents F As Worksheet

Private Sub F_Calculate()
    With UserForm1.Controls("TextBox3")
        If [g1].Value = 0 Then .Value = "00:00:00" Else .Value = CDate([g1].Value)
    End With
End Sub
Private Sub UserForm_Activate(): Set UserForm1.F = ActiveSheet: End Sub

Private Sub UserForm_Initialize()
    ' Configuration initiale du chronomètre
  'blablabla
'blablabla
'blablabla'
en gros tu substitue l'event de la feuille dans le userform
Terminé
 

Pièces jointes

re
ou tu gère tout dans le userform
et tu fais plus simple
je te montre le debut du code de ton userform
VB:
Option Explicit
Dim StartTime As Double
Dim Running As Boolean
Dim PauseTime As Double
Public WithEvents F As Worksheet

Private Sub F_Calculate()
    With UserForm1.Controls("TextBox3")
        If [g1].Value = 0 Then .Value = "00:00:00" Else .Value = CDate([g1].Value)
    End With
End Sub
Private Sub UserForm_Activate(): Set UserForm1.F = ActiveSheet: End Sub

Private Sub UserForm_Initialize()
    ' Configuration initiale du chronomètre
  'blablabla
'blablabla
'blablabla'
en gros tu substitue l'event de la feuille dans le userform
Terminé
Ok, merci aussi 😉
 
Autre chose
suis pas fan des Cases à cocher
1) c'est chiant à ajouter (la preuve ton code pour la créer, la placer et la lier)
2) ca alourdit la taille du fichier (avec, ton fichier fait 450Ko, sans.. il ne fait plus que 65Ko)

je préfère passer par des windings
ET puisque tu as une Table Structurée...
 
Si c'est dans un TS, il me semble que ça se duplique tout seul au moment de l'ajout d'une nouvelle ligne. Me trompé-je ?
Hello Toofat, c'est ce que je pensais;. mais c'est pas ce que j'ai vu

Tout à fait, c'est le cas
c'est le cas parce que dans ton code, du bouton "ajouter", il y a l'ajout de la case à cocher;..


sans case à cocher, et exploitation de la TS (notamment pour la recherche de la dernière ligne)

par contre.. va savoir pourquoi.. la formule de la colonne E, ne s'ajoute pas toute seule automatiquement
 

Pièces jointes

- 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

Réponses
8
Affichages
96
Réponses
0
Affichages
283
Réponses
6
Affichages
102
Retour