Bonjour à tous,
Chez moi sur Win 11 Excel 2019 la macro Private Sub t_été_Change() est parfaitement acceptée.
Que la TextBox soit dans une feuille ou dans un UserForm.
Curieux qu'il y ait problème sur 365.
A+
		
		
	 
oui j'ai un userfrom et j'ai un bouton dedans voici le code 
Private Sub CommandButton4_Click()
    ' Vérifie si TextBox1, ComboBox1 et ComboBox2 sont remplis
    If TextBox1.Text = "" Or ComboBox1.value = "" Or ComboBox2.value = "" Then
        MsgBox "VOUS DEVEZ REMPLIR LES CHAMPS AVEC *.", vbExclamation, "CHAMPS MANQUANTS"
        Exit Sub
    End If
    ' Débloquer les pages 2 et 3
    MultiPage1.Pages(1).Enabled = True ' Page 2
    MultiPage1.Pages(2).Enabled = True ' Page 3
    
    ' Ouvrir la page 2
    MultiPage1.value = 1
    
    ' Appeler la procédure de mise à jour de l'UserForm
    Call RefreshUserForm
    
    ' Initialiser la ProgressBar
    ProgressBar1.Min = 0
    ProgressBar1.Max = 100
    ProgressBar1.value = 0
    
    ' Boucle de progression avec l'API Sleep pour ajouter un délai
    Dim i As Integer
    For i = 1 To 100
        ProgressBar1.value = i
        Label27.Caption = "CALCUL EN COURS...: " & i & "%"
        DoEvents ' Permet à l'interface de se rafraîchir
        Sleep 10 ' Délai de 10 millisecondes pour accélérer légèrement
    Next i
    
    ' Mettre à jour le Label pour indiquer que le calcul est terminé
    Label27.Caption = "OPERATION REUSSIE"
    
    ' Construire le message pour Label43
    Dim message As String
    Dim valeurH9 As Double
    Dim label24Value As Double
    Dim label26Value As Double
    ' Initialiser les valeurs par défaut
    valeurH9 = 0
    label24Value = 0
    label26Value = 0
    
    ' Récupérer la valeur de Sheets("BD").Range("H9") et gérer les erreurs
    On Error Resume Next
    valeurH9 = CDbl(Sheets("BD").Range("H9").value)
    On Error GoTo 0
    
    ' Récupérer et formater les valeurs des labels
    If IsNumeric(Label24.Caption) Then
        label24Value = CDbl(Label24.Caption)
        ' Si la valeur de Label24 est négative, ne rien afficher
        If label24Value < 0 Then
            Label24.Caption = ""
        Else
            Label24.Caption = Format(label24Value, "#,##0") ' Formater la valeur pour Label24
        End If
    End If
    
    If IsNumeric(Label26.Caption) Then
        label26Value = CDbl(Label26.Caption)
        ' Si la valeur de Label26 est négative, ne rien afficher
        If label26Value < 0 Then
            Label26.Caption = ""
        Else
            Label26.Caption = Format(label26Value, "#,##0") ' Formater la valeur pour Label26
        End If
    End If
    
    ' Vérifier si les deux valeurs sont négatives
    If label24Value < 0 And label26Value < 0 Then
        Label43.Caption = "OUPS! AVEZ-VOUS VERIFIE VOS DONNEES ? IL FAUT RECOMMENCER VOTRE SMED !"
        Label43.BackColor = RGB(255, 0, 0) ' Fond rouge
        Label43.ForeColor = RGB(255, 255, 255) ' Texte blanc
    Else
        ' Construire le message avec formatage des nombres
        message = "IL RESTE A FAIRE " & Format(label24Value, "#,##0") & " SOIT : " & Format(valeurH9, "#,##0") & " BACS DE " & Format(ComboBox2.value, "#,##0")
        ' Condition pour vérifier si Label26 indique 0
        If label26Value = 0 Then
            Label26.Visible = False ' Cacher Label26 si sa valeur est 0
        Else
            message = message & " + REFAIRE " & Label26.Caption & " POUR QUE LE COMPTE SOIT JUSTE. "
            Label26.Visible = True ' Rendre Label26 visible sinon
        End If
        ' Mettre à jour le Label43 avec le message construit
        Label43.Caption = message
        ' Réinitialiser le style de Label43 (fond et police par défaut)
        Label43.BackColor = RGB(255, 255, 255) ' Fond blanc (ou autre couleur par défaut)
        Label43.ForeColor = RGB(0, 0, 0) ' Texte noir (ou autre couleur par défaut)
    End If
    ' Forcer la mise à jour de l'interface utilisateur
    DoEvents
    
    ' Rendre visibles les autres éléments souhaités
    ListBox1.Visible = True
    Label24.Visible = True
    Label49.Visible = True
    
    MultiPage1.Pages(0).Enabled = False
End Sub