affichage erroné des dates

  • Initiateur de la discussion Initiateur de la discussion etigi
  • 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 !

etigi

XLDnaute Junior
Bonjour à tous,

j'ai péniblement mis en place une macro (qui fonction très bien, d'ailleurs) sauf les dates,
cette macro m'affiche des dates erronées ou 01-jan-1900.

Je ne sais pas pourquoi, si quelqu'un pouvait m'éclairer, se serait génial.

Cette macro est la suivante :

Sub creatfeuille()
Dim sh As Worksheet
Dim i As Integer
Dim NomF As String

' recherche du numéro
On Error Resume Next
If Err > 0 Then Err.Clear
For i = 1 To 100
Sheets(i).Activate
' numéro trouvé
If Err.Number > 0 Then Exit For

Next i

With Sheets("model1")
.Copy after:=Sheets(Sheets.Count - 1)

'Nomme la nouvelle feuille avec le nom contenu en C6 de Sheets("RECAP")
ActiveSheet.Name = Sheets("RECAP").Range("C6").Value
'Ajout du numéro de facture dans la nouvelle feuille
ActiveSheet.Range("F18") = "FACTURE N°" & Sheets("RECAP").Range("C6").Value
'Mémorisation du nom de la dernière feuille pour l'utiliser en tant qu'hyperlien plus bas
NomF = ActiveSheet.Name

Range("Q26") = i
Range("R26") = Format(Now, "dd/mm/yyyy")
Range("F16") = i

End With

With Sheets("Recap")
Dim dl1 As Long ' dernière ligne

dl1 = .Range("a65536").End(xlUp).Row + 1
'création du lien hypertext dans la feuille RECAP en prenant le nom de la dernière feuille créée
.Range("C" & dl1).Hyperlinks.Add Anchor:=.Range("C" & dl1), Address:="", SubAddress:= _
"'" & NomF & "'!A1", TextToDisplay:=NomF

.Range("b" & dl1).Value = Format(Now, "dd/mm/yyyy")
.Range("a" & dl1).Value = i
'Incrémentation pour la prochaine facture
.Range("C6").Value = .Range("C6").Value + 1
'Inscription des formules dans la feuille RECAP
'pour récupérer les données des factures
.Range("L" & dl1) = "=" & Sheets(NomF).Name & "!F16" 'Inscription Date
.Range("D" & dl1) = "=" & Sheets(NomF).Name & "!F22" 'Réf Clt
.Range("E" & dl1) = "=" & Sheets(NomF).Name & "!Q14" 'Sté
.Range("F" & dl1) = "=" & Sheets(NomF).Name & "!Q16" 'Nom
.Range("G" & dl1) = "=" & Sheets(NomF).Name & "!Q18" 'Adresse
.Range("H" & dl1) = "=" & Sheets(NomF).Name & "!Q20" 'CP
.Range("I" & dl1) = "=" & Sheets(NomF).Name & "!S20" 'Ville
.Range("M" & dl1) = "=" & Sheets(NomF).Name & "!F22" 'Réf Clt
.Range("N" & dl1) = "=" & Sheets(NomF).Name & "!T34" 'loyer
.Range("O" & dl1) = "=" & Sheets(NomF).Name & "!W34" 'TVA s/loyer
.Range("P" & dl1) = "=" & Sheets(NomF).Name & "!T35" 'charges
.Range("Q" & dl1) = "=" & Sheets(NomF).Name & "!K31" 'propriétaires
.Range("R" & dl1) = "=" & Sheets(NomF).Name & "!Z64" 'total TTC
.Range("S" & dl1) = "=" & Sheets(NomF).Name & "!I62" 'frais de gestion HT
.Range("T" & dl1) = "=" & Sheets(NomF).Name & "!I63" 'TVA s/gestion
.Range("U" & dl1) = "=" & Sheets(NomF).Name & "!I64" 'gestion TTC
End With

End Sub
 
Re : affichage erroné des dates

Bonsoir etigi, bonsoir à toutes et à tous 🙂

j'ai péniblement mis en place une macro (qui fonction très bien, d'ailleurs) sauf les dates,
cette macro m'affiche des dates erronées ou 01-jan-1900.

Je ne sais pas pourquoi, si quelqu'un pouvait m'éclairer, se serait génial.

Cette macro est la suivante :

Sub creatfeuille()
Dim sh As Worksheet
Dim i As Integer
Dim NomF As String

' recherche du numéro
On Error Resume Next
If Err > 0 Then Err.Clear
For i = 1 To 100
Sheets(i).Activate
' numéro trouvé
If Err.Number > 0 Then Exit For

Next i

With Sheets("model1")
.Copy after:=Sheets(Sheets.Count - 1)

'Nomme la nouvelle feuille avec le nom contenu en C6 de Sheets("RECAP")
ActiveSheet.Name = Sheets("RECAP").Range("C6").Value
'Ajout du numéro de facture dans la nouvelle feuille
ActiveSheet.Range("F18") = "FACTURE N°" & Sheets("RECAP").Range("C6").Value
'Mémorisation du nom de la dernière feuille pour l'utiliser en tant qu'hyperlien plus bas
NomF = ActiveSheet.Name

Range("Q26") = i
' Je suppose que celle-ci ne pose pas de problème
Range("R26") = Format(Now, "dd/mm/yyyy")
' Par contre celle-ci me surprend un peut quand la cellule est réutilisée
Range("F16") = i

End With

With Sheets("Recap")
Dim dl1 As Long ' dernière ligne
' Je suppose que celle-ci ne pose pas de problème non plus
.Range("b" & dl1).Value = Format(Now, "dd/mm/yyyy")
.Range("a" & dl1).Value = i

'Inscription des formules dans la feuille RECAP
'pour récupérer les données des factures
' Par contre celle-là m'intrigue car tu utilises F16 à laquelle tu avais
'attribué la valeur de i précedemment

.Range("L" & dl1) = "=" & Sheets(NomF).Name & "!F16" 'Inscription Date
End With

End Sub

Par ailleurs, une instruction comme celle-ci (tes affectations) :

.Range("L" & dl1) = "=" & Sheets(NomF).Name & "!F16

peuvent être modifiées ainsi :

.Range("L" & dl1) = "=" & NomF & "!F16

car Sheets(NomF).Name est NomF

En espérant t'avoir aidé 😕

@+
 
Re : affichage erroné des dates

Allô!

La date s'affiche correctement ici.

As-tu testé en inscrivant une date à la main ?

As-tu vérifié le format date dans le Panneau de configuration > Options régionals et linguistiques > bouton Personnaliser > onglet Date ??

GFortin
 
Re : affichage erroné des dates

Bonjour,
Tu ferais passer ton fichier allégé, ça ne serait que mieux parce que là...
On Error Resume Next
If Err > 0 Then Err.Clear
For i = 1 To 100
Sheets(i).Activate
' numéro trouvé
If Err.Number > 0 Then Exit For
Next i
A quoi sert cette partie du code ? Il y a forcément au moins une feuille !

With Sheets("model1")
.Copy after:=Sheets(Sheets.Count - 1)
Le nb de feuilles t'es donné là

NomF = ActiveSheet.Name
Range("F16") = i 😕
With Sheets("Recap")
.Range("L" & dl1) = "=" & Sheets(NomF).Name & "!F16" 'Inscription Date 😕
Bin là forcément, il y a pb !
A+
kjin
 
- 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
479
Réponses
3
Affichages
672
Retour