Bonjour,
Je dois retraiter une feuille de données excel et surtout l'automatiser!
Donc j'utilie le VBA mais en vain...
Voilà mon pb:
J'ai 6 colonnes qui représentent des horaires de livraisons des magasins du lundi au samedi. Ces colonnes peuvent être toutes remplies, ou que quelques jours dans la semaine, les résultats sont stockés dans des variables (rep1, rep2 et rep3) que je souhaite faire afficher ensuite selon la règle:
=> si identiques: renvoyer le délai
=> si 1/2 différent: le delai répété + le problématique1 + le preoblématique 3
Le code est le suivant mais les heures se transforment en format décimal et ne gardent pas leur format d'heure...
Code :
- Public Sub synthese_heure()
- Dim x As Integer
- Dim y As Integer
- Dim c As Integer
- Columns("K" ).Select
- selection.ClearContents
- Range("K1" ) = "horaires"
- x = Range("A65536" ).End(xlUp).Row
- For y = x To 2 Step -1
- rep = Empty
- rep2 = Empty
- rep3 = Empty
- For c = 42 To 47
- donnée = Cells(y, c)
- If donnée <> "" Then
- If IsEmpty(rep) Then
- rep = donnée
- ElseIf donnée = rep Then
- rep = rep
- ElseIf donnée <> rep Then
- rep2 = donnée
- ElseIf donnée <> rep2 Then
- rep3 = donnée
- Else: End If
- Else: End If
- Next c
- If IsEmpty(rep2) Then
- Cells(y, 48) = rep
- ElseIf IsEmpty(rep3) Then
- Cells(y, 49) = rep2
- Else
- Cells(y, 50) = rep3
- End If
- Next y
- Columns("K:K" ).Select
- selection.NumberFormat = "h:mm;@"
- End Sub
|
Suis preneuse de toutes solutions...
Merci de votre lecture, A bientôt