Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Arrondi d'heure

  • Initiateur de la discussion Initiateur de la discussion isa44
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

isa44

XLDnaute Occasionnel
Bonjour , j'ai un fichier de conversion d'heures en centièmes d'heures.

Seulement lorsque je repasse en heures l'arrondi au suppérieur ne se fait pas.

Je joint le fichier en question.
Merci pour votre aide
 

Pièces jointes

Re : Arrondi d'heure

bonjour

voir ici :
Cells(x, y) = Format(Valeur, "0.00")

essais comme ceci en faisant les deux calculs et tu comprendras !
Cells(x, y) = Valeur
perte au calcul des centièmes et tu ne retrouves plus tes valeurs dans le sens retour

il faut revoir ton format !
 
Dernière édition:
Re : Arrondi d'heure

Bonjour isa44, Roland,

Perso j'aurais fait ça, beaucoup plus simple :

Code:
Sub Bouton5_QuandClic() 'heure en centième
Dim cel As Range
For Each cel In Range("D10:H13")
 [COLOR="Red"] If cel.Text Like "*:*" Then[/COLOR]
    cel = cel * 24
  End If
Next
Range("D10:H14").NumberFormat = "0.00"
End Sub

Sub Bouton6_QuandClic() 'centième en heure
Dim cel As Range
For Each cel In Range("D10:H13")
  If IsNumeric(cel.Text) Then
    cel = cel / 24
  End If
Next
Range("D10:H14").NumberFormat = "hh:mm"
End Sub

Mais il serait plus simple aussi de n'utiliser qu'un seul bouton dont le libellé s'inverse à chaque clic 🙂

A+
 
Dernière édition:
Re : Arrondi d'heure

bonjour isa44

Vois si cela te convient
L'astuce consiste en fait a ne jamais changer la valeur des cellules mais uniquement le format d'affichage
Avec en prime l'utilisation toujours possible pour des calculs

Arf : tres en retard sur ce coup !
 

Pièces jointes

Re : Arrondi d'heure

Re, salut pierrejean 🙂

Voici ce que peut donner le fichier avec un seul bouton.

La macro :

Code:
Sub Convertir() 'heure en centième
Dim cel As Range
Application.ScreenUpdating = False
With ActiveSheet.DrawingObjects(Application.Caller)
  .Text = "Tableau en " & IIf(InStr(.Text, "centième"), "", "centième d'") & "heures"
  Range("D7") = "En " & IIf(InStr(.Text, "centième"), "", "centième d'") & "heures"
  For Each cel In Range("D10:H13")
    If cel.Text Like "*:*" Then
      cel = cel * 24
    ElseIf IsNumeric(cel.Text) Then
      cel = cel / 24
    End If
  Next
  Range("D10:H14").NumberFormat = IIf(InStr(.Text, "centième"), "hh:mm", "0.00")
End With
End Sub

A+
 

Pièces jointes

Dernière édition:
Re : Arrondi d'heure

Re

Pour le fun avec un seul bouton
(Mais moins brillant que celui de Job 🙂 🙂)

Code:
Sub centiemes()
Set plage = Range("D10:H14")
ActiveSheet.Shapes("Button 5").Select
If Selection.Characters.Text = "Centiemes" Then
  plage.NumberFormat = "hh:mm"
  Selection.Characters.Text = "Heures"
Else
For Each cel In plage
x = Int(cel.Value * 2400) / 100
cel.NumberFormat = CStr(Int(x)) & "\," & CStr(Int((x - Int(x)) * 100))
Next cel
 Selection.Characters.Text = "Centiemes"
End If
Range("D9").Select
End Sub
 

Pièces jointes

Re : Arrondi d'heure

Re,

Et attention à vos formules en ligne 15 : elles soustraient des choux et des carottes quand les unités utilisées sont différentes...

Pour éviter ça, entrer en D15 la formule :

Code:
=D14-SI($D7="En heures";D26;D26*24)

ou mieux (plus léger) :

Code:
=D14-D26*24^($D7<>"En heures")

A tirer sur la droite.

Par ailleurs, il faut que la ligne 15 soit aussi formatée, donc ce code :

Code:
Range("D10:H[COLOR="Red"]15[/COLOR]").NumberFormat = IIf(InStr(.Text, "centième"), "hh:mm", "0.00")

A+
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
11
Affichages
245
  • Question Question
XL pour MAC fonction si
Réponses
5
Affichages
361
Réponses
4
Affichages
309
Réponses
3
Affichages
470
  • Question Question
Réponses
11
Affichages
427
Réponses
4
Affichages
365
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…