si ta date au format JJMMAAAA est en A1: =ANNEE(A1) & NO.SEMAINE(A1)
Cordialement,
GVentre
Bonjour, Jaimerais savoir comment peut on transformer sous excel une date en format JJMMAAAA (Jour, Mois, Année) en format AAAASS (Année, Semaine)
Merci d'avance
Laurent M
Bonjour,
Si A1 contient une date, disons le 18 janvier 2005 (le format n'a aucune importance, seul compte le fait qu'elle soit une date), alors tu as besoin de deux fonctions pour parvenir à tes fins:
=ANNEE(A1) te donnera 2005 =NO.SEMAINE(A1;1) te donnera 4
Pour les concaténer ensemble, tu pourrais faire qq chose du genre:
=ANNEE(A1)&DROITE("0"&NO.SEMAINE(A1;1);2)
Important: la fonction No.semaine n'est pas disponible par défaut dans Excel, il faut activer l'utilitaire d'analyse (Outils/Macros complémentaires/Utilitaire d'analyse). L'inconvénient est que si tu veux partager ce classeur avec d'autres personnes, il faudra les prévenir d'activer leur utilitaire d'analyse...
Laurent (du Canada)
Bonjour,
Si A1 contient une date, disons le 18 janvier 2005 (le format n'a aucune
importance, seul compte le fait qu'elle soit une date), alors tu as
besoin de deux fonctions pour parvenir à tes fins:
=ANNEE(A1) te donnera 2005
=NO.SEMAINE(A1;1) te donnera 4
Pour les concaténer ensemble, tu pourrais faire qq chose du genre:
=ANNEE(A1)&DROITE("0"&NO.SEMAINE(A1;1);2)
Important: la fonction No.semaine n'est pas disponible par défaut dans
Excel, il faut activer l'utilitaire d'analyse (Outils/Macros
complémentaires/Utilitaire d'analyse). L'inconvénient est que si tu veux
partager ce classeur avec d'autres personnes, il faudra les prévenir
d'activer leur utilitaire d'analyse...
Si A1 contient une date, disons le 18 janvier 2005 (le format n'a aucune importance, seul compte le fait qu'elle soit une date), alors tu as besoin de deux fonctions pour parvenir à tes fins:
=ANNEE(A1) te donnera 2005 =NO.SEMAINE(A1;1) te donnera 4
Pour les concaténer ensemble, tu pourrais faire qq chose du genre:
=ANNEE(A1)&DROITE("0"&NO.SEMAINE(A1;1);2)
Important: la fonction No.semaine n'est pas disponible par défaut dans Excel, il faut activer l'utilitaire d'analyse (Outils/Macros complémentaires/Utilitaire d'analyse). L'inconvénient est que si tu veux partager ce classeur avec d'autres personnes, il faudra les prévenir d'activer leur utilitaire d'analyse...
Laurent (du Canada)
PMO
Bonjour,
Ci-dessous le code d'un fonction à mettre dans le VBE de votre classeur. Elle s'utilise comme une fonction d'Excel.
EXEMPLE: Si en A1 vous avez 01/01/05 et que vous voulez obtenir l'année et le numéro de semaine (2005 1) en D1, tapez en D1 =ANNEE_SEMAINE(A1)
A NOTER Le résultat obtenu n'est pas un format mais une chaîne de caractères. Par conséquent, il ne pourra pas être traité comme un nombre ou une date.
'******************** Function ANNEE_SEMAINE(Cellule As Range) As String Dim i% If InStr(1, Cellule.Address, ":") Then ANNEE_SEMAINE = "#PLAGE!" Exit Function End If If Not IsDate(Cellule) Then ANNEE_SEMAINE = "#DATE!" Exit Function End If i% = 2 If Len(Format(Cellule, "yyyyww")) = 6 Then i% = 1 ANNEE_SEMAINE = Format(Cellule, "yyyy" & Space(i%) & "ww") End Function '********************
Cordialement.
PMO Patrick Morange
Bonjour, Jaimerais savoir comment peut on transformer sous excel une date en format JJMMAAAA (Jour, Mois, Année) en format AAAASS (Année, Semaine)
Merci d'avance
Bonjour,
Ci-dessous le code d'un fonction à mettre dans le VBE de votre classeur.
Elle s'utilise comme une fonction d'Excel.
EXEMPLE:
Si en A1 vous avez 01/01/05 et que vous voulez obtenir l'année et le numéro de
semaine (2005 1) en D1, tapez en D1 =ANNEE_SEMAINE(A1)
A NOTER
Le résultat obtenu n'est pas un format mais une chaîne de caractères.
Par conséquent, il ne pourra pas être traité comme un nombre ou une date.
'********************
Function ANNEE_SEMAINE(Cellule As Range) As String
Dim i%
If InStr(1, Cellule.Address, ":") Then
ANNEE_SEMAINE = "#PLAGE!"
Exit Function
End If
If Not IsDate(Cellule) Then
ANNEE_SEMAINE = "#DATE!"
Exit Function
End If
i% = 2
If Len(Format(Cellule, "yyyyww")) = 6 Then i% = 1
ANNEE_SEMAINE = Format(Cellule, "yyyy" & Space(i%) & "ww")
End Function
'********************
Cordialement.
PMO
Patrick Morange
Bonjour,
Jaimerais savoir comment peut on transformer sous excel une date en format
JJMMAAAA (Jour, Mois, Année) en format AAAASS (Année, Semaine)
Ci-dessous le code d'un fonction à mettre dans le VBE de votre classeur. Elle s'utilise comme une fonction d'Excel.
EXEMPLE: Si en A1 vous avez 01/01/05 et que vous voulez obtenir l'année et le numéro de semaine (2005 1) en D1, tapez en D1 =ANNEE_SEMAINE(A1)
A NOTER Le résultat obtenu n'est pas un format mais une chaîne de caractères. Par conséquent, il ne pourra pas être traité comme un nombre ou une date.
'******************** Function ANNEE_SEMAINE(Cellule As Range) As String Dim i% If InStr(1, Cellule.Address, ":") Then ANNEE_SEMAINE = "#PLAGE!" Exit Function End If If Not IsDate(Cellule) Then ANNEE_SEMAINE = "#DATE!" Exit Function End If i% = 2 If Len(Format(Cellule, "yyyyww")) = 6 Then i% = 1 ANNEE_SEMAINE = Format(Cellule, "yyyy" & Space(i%) & "ww") End Function '********************
Cordialement.
PMO Patrick Morange
Bonjour, Jaimerais savoir comment peut on transformer sous excel une date en format JJMMAAAA (Jour, Mois, Année) en format AAAASS (Année, Semaine)
Merci d'avance
Gaenonius
Tant qu'à utiliser une macro complémentaire comme l'utilitaire d'analyse ou une fonction perso, dont les résultats dans un cas comme dans l'autre sont en délicatesse avec la norme ISO utilisée en Europe (teste-les avec le 1/1/2005 comme date), et si tu utilises la norme européenne, télécharge la macro complémentaire Morefun.xll de Laurent Longre et utilise sa fonction NUM.SEMAINE :
=ANNEE(A1) & TEXTE(NUM.SEMAINE(A1);"00")
(téléchargement à cette adresse : http://longre.free.fr)
-- Gaenonius
Bonjour, Jaimerais savoir comment peut on transformer sous excel une date en format JJMMAAAA (Jour, Mois, Année) en format AAAASS (Année, Semaine)
Merci d'avance
Tant qu'à utiliser une macro complémentaire comme l'utilitaire d'analyse ou une
fonction perso, dont les résultats dans un cas comme dans l'autre sont en
délicatesse avec la norme ISO utilisée en Europe (teste-les avec le 1/1/2005
comme date), et si tu utilises la norme européenne, télécharge la macro
complémentaire Morefun.xll de Laurent Longre et utilise sa fonction NUM.SEMAINE :
=ANNEE(A1) & TEXTE(NUM.SEMAINE(A1);"00")
(téléchargement à cette adresse :
http://longre.free.fr)
--
Gaenonius
Bonjour,
Jaimerais savoir comment peut on transformer sous excel une date en format
JJMMAAAA (Jour, Mois, Année) en format AAAASS (Année, Semaine)
Tant qu'à utiliser une macro complémentaire comme l'utilitaire d'analyse ou une fonction perso, dont les résultats dans un cas comme dans l'autre sont en délicatesse avec la norme ISO utilisée en Europe (teste-les avec le 1/1/2005 comme date), et si tu utilises la norme européenne, télécharge la macro complémentaire Morefun.xll de Laurent Longre et utilise sa fonction NUM.SEMAINE :
=ANNEE(A1) & TEXTE(NUM.SEMAINE(A1);"00")
(téléchargement à cette adresse : http://longre.free.fr)
-- Gaenonius
Bonjour, Jaimerais savoir comment peut on transformer sous excel une date en format JJMMAAAA (Jour, Mois, Année) en format AAAASS (Année, Semaine)