Problème d'affichage de date avec macro

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 !

chris6999

XLDnaute Impliqué
Je fais un copier coller de mon premier message qui n'apparaît plus dans la liste...

Bonjour,

J'ai un petit souci avec une macro sensée enregistrer le temps passé au téléphone.
On clique sur un bouton pour activer le compte à rebour puis sur un autre pour le stopper.
Un autre bouton permet d'enregistrer les éventuelles erreurs de manip.

Bref tout va bien quand je me positionne sur la date du 12/11 comme aujourd'hui.
Cela donne par exemple 12/11/08 18:30:15

Parcontre si je modifie la date du PC en décembre ou janvier là rien ne va plus.
L'affichage de la date change et cela donne
12/jan/08 ou 12/dec/08
donc du coup la macro ne parvient plus à calculer le temps passé entre les deux bornes et ça bugue...

Je ne suis pas spécialiste des macro et je ne vois pas du tout d'où cela pourrait venir

Ci-dessous la macro car je ne parviens pas à joindre mon fichier (pour arriver à rentrer dans 48ko je ne sais pas comment on s'y prend!)
Il va de soi que j'ai essayé de compresser mon fichier en le zippant!

***************************
' * Gestion du temps (S.C.) *
' ***************************
Option Explicit
Dim derligne As Integer
Dim TEMPS



Sub zero()
'Dim derligne As Integer
With Sheets(1)
derligne = .Range("C65000").End(xlUp).Row + 1
If .Range("B" & derligne).Value = "" Then
.Unprotect
.Range("B" & derligne).Value = Format(Date & " " & Time, "dd/mmm/yyyy hh:mm:ss")
.Range("e" & derligne).Value = Format(Date & " " & Time, "mmmm yyyy")
.Protect
End If
End With
End Sub

Sub fin()
'Dim derligne As Integer
With Sheets(1)
derligne = .Range("D65000").End(xlUp).Row + 1
If .Range("B" & derligne).Value <> "" Then
.Unprotect
.Range("C" & derligne).Value = Format(Date & " " & Time, "dd/mmm/yyyy hh:mm:ss")
.Range("D" & derligne).Value = Format(Range("C" & derligne).Value - Range("B" & derligne).Value, "hh:mm:ss") 'Format((Time - Range("B" & derligne).Value), "hh:mm:ss")
.Protect
End If
End With
End Sub

Sub erreur()
With Sheets(1)
If .Range("B" & derligne).Value <> "" Then
.Unprotect
.Range("E" & derligne).Value = "ERREUR"
fin
.Protect
End If
End With
End Sub


J'espère que vous pourrez m'aider...
 
Re : Problème d'affichage de date avec macro

Re chris,

Ce n'est pas top de recréer un nouveau message....

Ton premier message est ici : http://www.excel-downloads.com/forum/107230-probl-me-daffichage-de-date-avec-macro.html

Pour le faire remonter, il te suffit de mettre un nouveau post dessus.

Par ailleurs, as-tu réussi à zipper ton fichier avec la méthode que je t'ai indiquée ?

Pour finir, ce message sera lu, même s'il est en 2ème ou 3ème page, très visible avec l'indicateur des messages non lus.

Bonne soirée.

Jean-Pierre
 
Re : Problème d'affichage de date avec macro

Je fais un copier coller de mon premier message qui n'apparaît plus dans la liste...

Bonjour,

J'ai un petit souci avec une macro sensée enregistrer le temps passé au téléphone.
On clique sur un bouton pour activer le compte à rebour puis sur un autre pour le stopper.
Un autre bouton permet d'enregistrer les éventuelles erreurs de manip.

Bref tout va bien quand je me positionne sur la date du 12/11 comme aujourd'hui.
Cela donne par exemple 12/11/08 18:30:15

Parcontre si je modifie la date du PC en décembre ou janvier là rien ne va plus.
L'affichage de la date change et cela donne
12/jan/08 ou 12/dec/08
donc du coup la macro ne parvient plus à calculer le temps passé entre les deux bornes et ça bugue...

Je ne suis pas spécialiste des macro et je ne vois pas du tout d'où cela pourrait venir

Ci-dessous la macro car je ne parviens pas à joindre mon fichier (pour arriver à rentrer dans 48ko je ne sais pas comment on s'y prend!)
Il va de soi que j'ai essayé de compresser mon fichier en le zippant!

***************************
' * Gestion du temps (S.C.) *
' ***************************
Option Explicit
Dim derligne As Integer
Dim TEMPS



Sub zero()
'Dim derligne As Integer
With Sheets(1)
derligne = .Range("C65000").End(xlUp).Row + 1
If .Range("B" & derligne).Value = "" Then
.Unprotect
.Range("B" & derligne).Value = Format(Date & " " & Time, "dd/mmm/yyyy hh:mm:ss")
.Range("e" & derligne).Value = Format(Date & " " & Time, "mmmm yyyy")
.Protect
End If
End With
End Sub

Sub fin()
'Dim derligne As Integer
With Sheets(1)
derligne = .Range("D65000").End(xlUp).Row + 1
If .Range("B" & derligne).Value <> "" Then
.Unprotect
.Range("C" & derligne).Value = Format(Date & " " & Time, "dd/mmm/yyyy hh:mm:ss")
.Range("D" & derligne).Value = Format(Range("C" & derligne).Value - Range("B" & derligne).Value, "hh:mm:ss") 'Format((Time - Range("B" & derligne).Value), "hh:mm:ss")
.Protect
End If
End With
End Sub

Sub erreur()
With Sheets(1)
If .Range("B" & derligne).Value <> "" Then
.Unprotect
.Range("E" & derligne).Value = "ERREUR"
fin
.Protect
End If
End With
End Sub


J'espère que vous pourrez m'aider...

Bonjour ne serait-ce pas simplement dans les format de date dans ton code?

Une fois "mmm = mois en abrégé
une fois "mmm"= mois en entier

par contre "mm" = mois numérique.
Peut-être en forcant le format de ta colonne c et d en format nombre: date jj/mm/aaaa hh/mm/ss

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

  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
482
Réponses
4
Affichages
180
  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
650
Réponses
10
Affichages
282
Réponses
7
Affichages
212
  • Question Question
Microsoft 365 Problème de date
Réponses
5
Affichages
163
  • Question Question
Microsoft 365 Problème macro
Réponses
4
Affichages
246
Réponses
4
Affichages
461
Réponses
2
Affichages
154
Réponses
6
Affichages
303
Retour