Bonjour,
J'ai un fichier de suivi de véhicules présenté comme ceci :
B F G I K L
2 Controle technique courroie Révision Pneu avant Pneu arrière......
3 Voiture 1 21/02/2010 27/06/2004 30/03/2011 25/04/2011
4 Voiture 2 23/02/2009 08/05/2010 09/05/2010 15/06/2010
5 .
13 Voiture 14 15/04/2006 13/03/2009 19/05/2011 18/02/2011
Lors de l'ouverture du Userform, je clique sur les optionbutton "courroie" ou "Controle technique",..... et je choisis une voiture et je rentre la date. Malheureusement la date ne se met pas la cellule désirée ('ex: date de changement courroie pour la voiture 1 ne s'insère pas dans la cellule G3 après validation.
Cela doit venir du code mais je ne sais pas où.
Pouvez-vous m'aider.
Merci d'avance.
Private Sub CommandButton1_Click()
If Range("AC2").Value = 0 Then
MsgBox "Vous n'avez à ce jour aucune échéance !"
Exit Sub
Else
Application.ScreenUpdating = False
With ListBox1
Nbjoueurs = .ListCount - 1
For I = 0 To Nbjoueurs
If .Selected(I) = True Then
.Selected(I) = False
num = .List(I)
Columns("A:A").Select
Selection.Find(What:=num, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False).Activate
ActiveCell.Select
Dim date2
If OptionButton1.Value = True Then
date2 = Format(TextBox3.Value, "dd/mm/yyyy")
date2 = CDate(date2)
ActiveCell.Offset(0, 6) = date2 'Courroie
ActiveCell.Offset(0, 7) = TextBox5.Value
ActiveCell.Offset(0, 19) = TextBox4.Value
Else
date2 = Format(TextBox3.Value, "dd/mm/yyyy")
date2 = CDate(date2)
ActiveCell.Offset(0, 8) = date2 'révision
ActiveCell.Offset(0, 9) = TextBox5.Value
ActiveCell.Offset(0, 19) = TextBox4.Value
End If
End If
Next
If OptionButton1.Value = True Then
date2 = Format(TextBox3.Value, "dd/mm/yyyy")
date2 = CDate(date2)
ActiveCell.Offset(0, 5) = date2 'CT
ActiveCell.Offset(0, 19) = TextBox4.Value
Else
date2 = Format(TextBox3.Value, "dd/mm/yyyy")
date2 = CDate(date2)
ActiveCell.Offset(0, 10) = date2 'PNEU AVANT
ActiveCell.Offset(0, 19) = TextBox4.Value
End If
End With
If OptionButton1.Value = True Then
date2 = Format(TextBox3.Value, "dd/mm/yyyy")
date2 = CDate(date2)
ActiveCell.Offset(0, 11) = date2 'PNEU ARRIERE
ActiveCell.Offset(0, 19) = TextBox4.Value
End If
Application.ScreenUpdating = True
numvs = ActiveCell.Value
MsgBox "Voiture " & numvs & " validée"
Worksheets("basevs").Range("A2:Y30").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
"AA2:AB3"), CopyToRange:=Range("AD2:BB2"), Unique:=False
DERNIERVALEUR = Worksheets("basevs").Range("aD2").End(xlDown).Address
ListBox1.RowSource = "BASEvs!AD3: " & DERNIERVALEUR & ""
CommandButton4.Enabled = False
CommandButton1.Enabled = False
End If
End Sub
J'ai un fichier de suivi de véhicules présenté comme ceci :
B F G I K L
2 Controle technique courroie Révision Pneu avant Pneu arrière......
3 Voiture 1 21/02/2010 27/06/2004 30/03/2011 25/04/2011
4 Voiture 2 23/02/2009 08/05/2010 09/05/2010 15/06/2010
5 .
13 Voiture 14 15/04/2006 13/03/2009 19/05/2011 18/02/2011
Lors de l'ouverture du Userform, je clique sur les optionbutton "courroie" ou "Controle technique",..... et je choisis une voiture et je rentre la date. Malheureusement la date ne se met pas la cellule désirée ('ex: date de changement courroie pour la voiture 1 ne s'insère pas dans la cellule G3 après validation.
Cela doit venir du code mais je ne sais pas où.
Pouvez-vous m'aider.
Merci d'avance.
Private Sub CommandButton1_Click()
If Range("AC2").Value = 0 Then
MsgBox "Vous n'avez à ce jour aucune échéance !"
Exit Sub
Else
Application.ScreenUpdating = False
With ListBox1
Nbjoueurs = .ListCount - 1
For I = 0 To Nbjoueurs
If .Selected(I) = True Then
.Selected(I) = False
num = .List(I)
Columns("A:A").Select
Selection.Find(What:=num, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False).Activate
ActiveCell.Select
Dim date2
If OptionButton1.Value = True Then
date2 = Format(TextBox3.Value, "dd/mm/yyyy")
date2 = CDate(date2)
ActiveCell.Offset(0, 6) = date2 'Courroie
ActiveCell.Offset(0, 7) = TextBox5.Value
ActiveCell.Offset(0, 19) = TextBox4.Value
Else
date2 = Format(TextBox3.Value, "dd/mm/yyyy")
date2 = CDate(date2)
ActiveCell.Offset(0, 8) = date2 'révision
ActiveCell.Offset(0, 9) = TextBox5.Value
ActiveCell.Offset(0, 19) = TextBox4.Value
End If
End If
Next
If OptionButton1.Value = True Then
date2 = Format(TextBox3.Value, "dd/mm/yyyy")
date2 = CDate(date2)
ActiveCell.Offset(0, 5) = date2 'CT
ActiveCell.Offset(0, 19) = TextBox4.Value
Else
date2 = Format(TextBox3.Value, "dd/mm/yyyy")
date2 = CDate(date2)
ActiveCell.Offset(0, 10) = date2 'PNEU AVANT
ActiveCell.Offset(0, 19) = TextBox4.Value
End If
End With
If OptionButton1.Value = True Then
date2 = Format(TextBox3.Value, "dd/mm/yyyy")
date2 = CDate(date2)
ActiveCell.Offset(0, 11) = date2 'PNEU ARRIERE
ActiveCell.Offset(0, 19) = TextBox4.Value
End If
Application.ScreenUpdating = True
numvs = ActiveCell.Value
MsgBox "Voiture " & numvs & " validée"
Worksheets("basevs").Range("A2:Y30").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
"AA2:AB3"), CopyToRange:=Range("AD2:BB2"), Unique:=False
DERNIERVALEUR = Worksheets("basevs").Range("aD2").End(xlDown).Address
ListBox1.RowSource = "BASEvs!AD3: " & DERNIERVALEUR & ""
CommandButton4.Enabled = False
CommandButton1.Enabled = False
End If
End Sub