Bonjour à tous,
Je suis plutôt débutant sur VBA et complètement autodidacte d'où mon manque de connaissance sur les formats et syntaxes associées.
J'essaye de programmer une macro qui à partir de deux textbox "heure" et "minute" me donne une heure "hh:mm" à exploiter dans mon tableau Excel (recherche d'un numéro de coulée à encoder et modification de l'heure du tableau par celle encodée dans le userform).
Mais ça coince une fois la valeur encodée, au lieu de 19:00, la macro insère 19/01/1900 00:00:00. J'ai essayé de tricher sur le contenu du string (en ajoutant 19/01/1900) mais ça ne passe pas.
Voici le code du UserForm :
Private Sub CommandButton1_Click()
Dim i As Integer
If Len(TextBox1.Value) = 1 Then If Len(TextBox2.Value) = 1 Then Heur = ("0" & UserForm3.TextBox1 & ":0" & UserForm3.TextBox2) Else Heur = ("0" & UserForm3.TextBox1 & ":" & UserForm3.TextBox2) Else: If Len(TextBox2.Value) = 1 Then Heur = (UserForm3.TextBox1 & ":0" & UserForm3.TextBox2) Else: Heur = (UserForm3.TextBox1 & ":" & UserForm3.TextBox2)
Range("F1").Select
ActiveCell.Value = Heur
COULEE = UserForm3.TextBox3.Value
Range("A3").Select
For i = 3 To 18
Range("A" & i).Select
If Range("A" & i).Value = Val(COULEE) Then
Range("F" & i).Select
Range("F" & i).Value = Val(Heur)
UserForm3.Hide
End If
Next i
End Sub
Private Sub TextBox1_Change()
End Sub
Je sens que je vais irriter quelques paires de yeux avec ce code certainement peu orthodoxe mais si passez au-dessus de ça votre aide me sera précieuse !
Merci d'avance,
François
Je suis plutôt débutant sur VBA et complètement autodidacte d'où mon manque de connaissance sur les formats et syntaxes associées.
J'essaye de programmer une macro qui à partir de deux textbox "heure" et "minute" me donne une heure "hh:mm" à exploiter dans mon tableau Excel (recherche d'un numéro de coulée à encoder et modification de l'heure du tableau par celle encodée dans le userform).
Mais ça coince une fois la valeur encodée, au lieu de 19:00, la macro insère 19/01/1900 00:00:00. J'ai essayé de tricher sur le contenu du string (en ajoutant 19/01/1900) mais ça ne passe pas.
Voici le code du UserForm :
Private Sub CommandButton1_Click()
Dim i As Integer
If Len(TextBox1.Value) = 1 Then If Len(TextBox2.Value) = 1 Then Heur = ("0" & UserForm3.TextBox1 & ":0" & UserForm3.TextBox2) Else Heur = ("0" & UserForm3.TextBox1 & ":" & UserForm3.TextBox2) Else: If Len(TextBox2.Value) = 1 Then Heur = (UserForm3.TextBox1 & ":0" & UserForm3.TextBox2) Else: Heur = (UserForm3.TextBox1 & ":" & UserForm3.TextBox2)
Range("F1").Select
ActiveCell.Value = Heur
COULEE = UserForm3.TextBox3.Value
Range("A3").Select
For i = 3 To 18
Range("A" & i).Select
If Range("A" & i).Value = Val(COULEE) Then
Range("F" & i).Select
Range("F" & i).Value = Val(Heur)
UserForm3.Hide
End If
Next i
End Sub
Private Sub TextBox1_Change()
End Sub
Je sens que je vais irriter quelques paires de yeux avec ce code certainement peu orthodoxe mais si passez au-dessus de ça votre aide me sera précieuse !
Merci d'avance,
François