NumberFormat
Résolu
Marcos Y
Messages postés
123
Date d'inscription
Statut
Membre
Dernière intervention
-
Marcos Y Messages postés 123 Date d'inscription Statut Membre Dernière intervention -
Marcos Y Messages postés 123 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis en train d'améliorer un fichier Excel qui gère mes heures de pointage au travail. Pour cela, j'ai créé une Macro afin de paramétrer le classeur. Elle permettra de renseigner, au moyen d'un UserForm, les données nécessaires pour les calculs, sur un onglet masqué appelé "paramètres".
Voici le code du bouton de validation de mon UserForm (Label4 et Label5 sont des messages d'erreur) :
Tout ça fonctionne assez bien, sauf que mes cellules "journée_contractuelle" et "pause_minimum" n'apparaissent pas formatées comme indiqué.
Il semble que le "NumberFormat" n'est pas appliqué.
Comment faire ?
Merci d'avance pour vos réponses
Je suis en train d'améliorer un fichier Excel qui gère mes heures de pointage au travail. Pour cela, j'ai créé une Macro afin de paramétrer le classeur. Elle permettra de renseigner, au moyen d'un UserForm, les données nécessaires pour les calculs, sur un onglet masqué appelé "paramètres".
Voici le code du bouton de validation de mon UserForm (Label4 et Label5 sont des messages d'erreur) :
Private Sub CommandButton1_Click()
If IsDate(TextBox1.Text) = False Then
Label4.Visible = True
Exit Sub
End If
If IsDate(TextBox2.Text) = False Then
Label5.Visible = True
Exit Sub
End If
With Range("journée_contractuelle")
.Value = TextBox1
.NumberFormat = "[h]:mm"
End With
With Range("pause_minimum")
.Value = TextBox2
.NumberFormat = "[h]:mm"
End With
Range("type_de_contrat").Value = ComboBox1.Text
UserForm1.Hide
End Sub
Tout ça fonctionne assez bien, sauf que mes cellules "journée_contractuelle" et "pause_minimum" n'apparaissent pas formatées comme indiqué.
Il semble que le "NumberFormat" n'est pas appliqué.
Comment faire ?
Merci d'avance pour vos réponses
1 réponse
Bonjour Marcos, bonjour le forum,
Peut-être comme ça :
Peut-être comme ça :
Private Sub CommandButton1_Click()
If IsDate(TextBox1.Text) = False Then
Label4.Visible = True
Exit Sub
End If
If IsDate(TextBox2.Text) = False Then
Label5.Visible = True
Exit Sub
End If
With Range("journée_contractuelle")
.Value = TimeSerial(Hour(TextBox1.Value), Minute(TextBox1.Value), Second(TextBox1.Value))
.NumberFormat = "[h]:mm"
End With
With Range("pause_minimum")
.Value = TimeSerial(Hour(TextBox2.Value), Minute(TextBox2.Value), Second(TextBox2.Value))
.NumberFormat = "[h]:mm"
End With
Range("type_de_contrat").Value = ComboBox1.Text
UserForm1.Hide
End Sub
Ton code fonctionne parfaitement. Merci pour ton aide.
A bientôt !