Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Nicolas B.
Salut gmore,
Voici une formule qui devrait fonctionner (attention aux retours à la ligne) : =SOMMEPROD(NON(ESTERREUR(CHERCHE({"Jan";"Feb";"Mar";"Apr";"May";"Jun";"Jul"; "Aug";"Sep";"Oct";"Nov";"Dec"};A1)))*{1;2;3;4;5;6;7;8;9;10;11;12})
j'ai un document qui contient un format de date non validé par Excel :
Exemple : Fri 31 Oct 2003
Je veux simplement obtenir, selon un mois donné, un nombre dans une autre cellule pour continuer mon projet qui correspond au mois.
Exemple : Fri 31 Oct 2003 Mois Année 03 Wed 5 Feb 2003 Mois=2 Année 03
Je suis en mesure d'utiliser la fonction CHERCHE comme suit : =SI(CHERCHE("Jan",J2),"01","rien")
Si vous avez une meilleur idée, elle est très bienvenue.
Merci! gmore
Salut gmore,
Voici une formule qui devrait fonctionner (attention aux retours à la ligne)
:
=SOMMEPROD(NON(ESTERREUR(CHERCHE({"Jan";"Feb";"Mar";"Apr";"May";"Jun";"Jul";
"Aug";"Sep";"Oct";"Nov";"Dec"};A1)))*{1;2;3;4;5;6;7;8;9;10;11;12})
Voici une formule qui devrait fonctionner (attention aux retours à la ligne) : =SOMMEPROD(NON(ESTERREUR(CHERCHE({"Jan";"Feb";"Mar";"Apr";"May";"Jun";"Jul"; "Aug";"Sep";"Oct";"Nov";"Dec"};A1)))*{1;2;3;4;5;6;7;8;9;10;11;12})
j'ai un document qui contient un format de date non validé par Excel :
Exemple : Fri 31 Oct 2003
Je veux simplement obtenir, selon un mois donné, un nombre dans une autre cellule pour continuer mon projet qui correspond au mois.
Exemple : Fri 31 Oct 2003 Mois Année 03 Wed 5 Feb 2003 Mois=2 Année 03
Je suis en mesure d'utiliser la fonction CHERCHE comme suit : =SI(CHERCHE("Jan",J2),"01","rien")
Si vous avez une meilleur idée, elle est très bienvenue.
Merci! gmore
FxM
Bonsoir,
Sous forme de fonction perso matricielle horizontale (hein, qu'est-ce qu'y dit ? ;o))
Alt-F11 | insertion | module, copies-y ce qui suit :
Function moa2(inp) Application.Volatile Dim arr(2), arr2(1) inp = StrReverse(inp): arr(1) = CDbl(StrReverse(Left(inp, 5))) inp = Right(inp, Len(inp) - 5) arr(0) = StrReverse(Left(inp, InStr(1, inp, " ") - 1)) Select Case UCase(arr(0)) Case "JAN": arr(0) = 1 Case "FEV", "FEB": arr(0) = 2 Case "MAR": arr(0) = 3 Case "AVR", "APR": arr(0) = 4 Case "MAI", "MAY": arr(0) = 5 Case "JUN": arr(0) = 6 Case "JUL": arr(0) = 7 Case "AOU", "AUG": arr(0) = 8 Case "SEP": arr(0) = 9 Case "OCT": arr(0) = 10 Case "NOV": arr(0) = 11 Case "DEC": arr(0) = 12 End Select moa2 = arr End Function
Usage : avec ton Avec Fri 31 Oct 2003 en A1, sélectionne B1:C1. En guise de formule, tapes =moa2(A1) et valide en matriciel (par ctrl-maj-enter) Tu obtiens 10 en B1 et 2003 en C1
Avec Wed 5 Feb 2003 en A2, sélectionne B2:C2. =moa2(A2) te renvoit 2 en B2 et 2003 en C2.
@+ FxM
gmore a écrit:
Bonjour,
j'ai un document qui contient un format de date non validé par Excel :
Exemple : Fri 31 Oct 2003
Je veux simplement obtenir, selon un mois donné, un nombre dans une autre cellule pour continuer mon projet qui correspond au mois.
Exemple : Fri 31 Oct 2003 Mois Année 03 Wed 5 Feb 2003 Mois=2 Année 03
Je suis en mesure d'utiliser la fonction CHERCHE comme suit : =SI(CHERCHE("Jan",J2),"01","rien")
Si vous avez une meilleur idée, elle est très bienvenue.
Merci! gmore
Bonsoir,
Sous forme de fonction perso matricielle horizontale (hein, qu'est-ce
qu'y dit ? ;o))
Alt-F11 | insertion | module, copies-y ce qui suit :
Function moa2(inp)
Application.Volatile
Dim arr(2), arr2(1)
inp = StrReverse(inp): arr(1) = CDbl(StrReverse(Left(inp, 5)))
inp = Right(inp, Len(inp) - 5)
arr(0) = StrReverse(Left(inp, InStr(1, inp, " ") - 1))
Select Case UCase(arr(0))
Case "JAN": arr(0) = 1
Case "FEV", "FEB": arr(0) = 2
Case "MAR": arr(0) = 3
Case "AVR", "APR": arr(0) = 4
Case "MAI", "MAY": arr(0) = 5
Case "JUN": arr(0) = 6
Case "JUL": arr(0) = 7
Case "AOU", "AUG": arr(0) = 8
Case "SEP": arr(0) = 9
Case "OCT": arr(0) = 10
Case "NOV": arr(0) = 11
Case "DEC": arr(0) = 12
End Select
moa2 = arr
End Function
Usage :
avec ton
Avec Fri 31 Oct 2003 en A1, sélectionne B1:C1. En guise de formule,
tapes =moa2(A1) et valide en matriciel (par ctrl-maj-enter)
Tu obtiens 10 en B1 et 2003 en C1
Avec Wed 5 Feb 2003 en A2, sélectionne B2:C2. =moa2(A2) te renvoit 2
en B2 et 2003 en C2.
@+
FxM
gmore a écrit:
Bonjour,
j'ai un document qui contient un format de date non validé
par Excel :
Exemple : Fri 31 Oct 2003
Je veux simplement obtenir, selon un mois donné, un nombre
dans une autre cellule pour continuer mon projet qui
correspond au mois.
Exemple : Fri 31 Oct 2003 Mois Année 03
Wed 5 Feb 2003 Mois=2 Année 03
Je suis en mesure d'utiliser la fonction CHERCHE comme
suit : =SI(CHERCHE("Jan",J2),"01","rien")
Si vous avez une meilleur idée, elle est très bienvenue.
Sous forme de fonction perso matricielle horizontale (hein, qu'est-ce qu'y dit ? ;o))
Alt-F11 | insertion | module, copies-y ce qui suit :
Function moa2(inp) Application.Volatile Dim arr(2), arr2(1) inp = StrReverse(inp): arr(1) = CDbl(StrReverse(Left(inp, 5))) inp = Right(inp, Len(inp) - 5) arr(0) = StrReverse(Left(inp, InStr(1, inp, " ") - 1)) Select Case UCase(arr(0)) Case "JAN": arr(0) = 1 Case "FEV", "FEB": arr(0) = 2 Case "MAR": arr(0) = 3 Case "AVR", "APR": arr(0) = 4 Case "MAI", "MAY": arr(0) = 5 Case "JUN": arr(0) = 6 Case "JUL": arr(0) = 7 Case "AOU", "AUG": arr(0) = 8 Case "SEP": arr(0) = 9 Case "OCT": arr(0) = 10 Case "NOV": arr(0) = 11 Case "DEC": arr(0) = 12 End Select moa2 = arr End Function
Usage : avec ton Avec Fri 31 Oct 2003 en A1, sélectionne B1:C1. En guise de formule, tapes =moa2(A1) et valide en matriciel (par ctrl-maj-enter) Tu obtiens 10 en B1 et 2003 en C1
Avec Wed 5 Feb 2003 en A2, sélectionne B2:C2. =moa2(A2) te renvoit 2 en B2 et 2003 en C2.
@+ FxM
gmore a écrit:
Bonjour,
j'ai un document qui contient un format de date non validé par Excel :
Exemple : Fri 31 Oct 2003
Je veux simplement obtenir, selon un mois donné, un nombre dans une autre cellule pour continuer mon projet qui correspond au mois.
Exemple : Fri 31 Oct 2003 Mois Année 03 Wed 5 Feb 2003 Mois=2 Année 03
Je suis en mesure d'utiliser la fonction CHERCHE comme suit : =SI(CHERCHE("Jan",J2),"01","rien")
Si vous avez une meilleur idée, elle est très bienvenue.
Merci! gmore
Jean-François Aubert
Et encore une autre fonction perso:
Function trad(cell As Range) InEnglish = cell jj = Right(InEnglish, Len(InEnglish) - 4) j = Left(jj, Len(jj) - 9) a = Right(InEnglish, 4) mois = Left(Right(InEnglish, 8), 3) Select Case mois Case "Jan": m = 1 Case "Feb": m = 2 Case "Mar": m = 3 Case "Apr": m = 4 Case "May": m = 5 Case "Jun": m = 6 Case "Jul": m = 7 Case "Aug": m = 8 Case "Sep": m = 9 Case "Oct": m = 10 Case "Nov": m = 11 Case "Dec": m = 12 End Select trad = CDate(j & "." & m & "." & a) End Function 'ajf
-- Amicalement
Jean-François Aubert {Vaudois de la Côte Lémanique}
"gmore" a écrit dans le message de news:4a0101c3a24c$1b2cc940$ Bonjour,
j'ai un document qui contient un format de date non validé par Excel :
Exemple : Fri 31 Oct 2003
Je veux simplement obtenir, selon un mois donné, un nombre dans une autre cellule pour continuer mon projet qui correspond au mois.
Exemple : Fri 31 Oct 2003 Mois Année 03 Wed 5 Feb 2003 Mois=2 Année 03
Je suis en mesure d'utiliser la fonction CHERCHE comme suit : =SI(CHERCHE("Jan",J2),"01","rien")
Si vous avez une meilleur idée, elle est très bienvenue.
Merci! gmore
Et encore une autre fonction perso:
Function trad(cell As Range)
InEnglish = cell
jj = Right(InEnglish, Len(InEnglish) - 4)
j = Left(jj, Len(jj) - 9)
a = Right(InEnglish, 4)
mois = Left(Right(InEnglish, 8), 3)
Select Case mois
Case "Jan": m = 1
Case "Feb": m = 2
Case "Mar": m = 3
Case "Apr": m = 4
Case "May": m = 5
Case "Jun": m = 6
Case "Jul": m = 7
Case "Aug": m = 8
Case "Sep": m = 9
Case "Oct": m = 10
Case "Nov": m = 11
Case "Dec": m = 12
End Select
trad = CDate(j & "." & m & "." & a)
End Function 'ajf
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"gmore" <gmore@moreag.net> a écrit dans le message de news:4a0101c3a24c$1b2cc940$7d02280a@phx.gbl...
Bonjour,
j'ai un document qui contient un format de date non validé
par Excel :
Exemple : Fri 31 Oct 2003
Je veux simplement obtenir, selon un mois donné, un nombre
dans une autre cellule pour continuer mon projet qui
correspond au mois.
Exemple : Fri 31 Oct 2003 Mois Année 03
Wed 5 Feb 2003 Mois=2 Année 03
Je suis en mesure d'utiliser la fonction CHERCHE comme
suit : =SI(CHERCHE("Jan",J2),"01","rien")
Si vous avez une meilleur idée, elle est très bienvenue.
Function trad(cell As Range) InEnglish = cell jj = Right(InEnglish, Len(InEnglish) - 4) j = Left(jj, Len(jj) - 9) a = Right(InEnglish, 4) mois = Left(Right(InEnglish, 8), 3) Select Case mois Case "Jan": m = 1 Case "Feb": m = 2 Case "Mar": m = 3 Case "Apr": m = 4 Case "May": m = 5 Case "Jun": m = 6 Case "Jul": m = 7 Case "Aug": m = 8 Case "Sep": m = 9 Case "Oct": m = 10 Case "Nov": m = 11 Case "Dec": m = 12 End Select trad = CDate(j & "." & m & "." & a) End Function 'ajf
-- Amicalement
Jean-François Aubert {Vaudois de la Côte Lémanique}
"gmore" a écrit dans le message de news:4a0101c3a24c$1b2cc940$ Bonjour,
j'ai un document qui contient un format de date non validé par Excel :
Exemple : Fri 31 Oct 2003
Je veux simplement obtenir, selon un mois donné, un nombre dans une autre cellule pour continuer mon projet qui correspond au mois.
Exemple : Fri 31 Oct 2003 Mois Année 03 Wed 5 Feb 2003 Mois=2 Année 03
Je suis en mesure d'utiliser la fonction CHERCHE comme suit : =SI(CHERCHE("Jan",J2),"01","rien")
Si vous avez une meilleur idée, elle est très bienvenue.
Merci! gmore
Jean-François Aubert
Et selon un judicieux conseil, que naguère, Daniel.M m'avait prodigué:
pour rendre le code compatible avec les différents systèmes de représentation des dates, ( la date retournée, mais non pas la date à traiter ! )
remplace la ligne de code:
trad = CDate(j & "." & m & "." & a)
par : trad = DateSerial(a, m, j) -- Amicalement
Jean-François Aubert {Vaudois de la Côte Lémanique}
"Jean-François Aubert" <à a écrit dans le message de news:
Et encore une autre fonction perso:
Function trad(cell As Range) InEnglish = cell jj = Right(InEnglish, Len(InEnglish) - 4) j = Left(jj, Len(jj) - 9) a = Right(InEnglish, 4) mois = Left(Right(InEnglish, 8), 3) Select Case mois Case "Jan": m = 1 Case "Feb": m = 2 Case "Mar": m = 3 Case "Apr": m = 4 Case "May": m = 5 Case "Jun": m = 6 Case "Jul": m = 7 Case "Aug": m = 8 Case "Sep": m = 9 Case "Oct": m = 10 Case "Nov": m = 11 Case "Dec": m = 12 End Select trad = CDate(j & "." & m & "." & a) End Function 'ajf
Et selon un judicieux conseil, que naguère, Daniel.M m'avait prodigué:
pour rendre le code compatible avec les différents systèmes de
représentation des dates, ( la date retournée, mais non pas la date à traiter ! )
remplace la ligne de code:
trad = CDate(j & "." & m & "." & a)
par :
trad = DateSerial(a, m, j)
--
Amicalement
Jean-François Aubert
{Vaudois de la Côte Lémanique}
"Jean-François Aubert" <àOterjfaubert@bluewin.ch> a écrit dans le message de
news:3fa6d62a_1@news.bluewin.ch...
Et encore une autre fonction perso:
Function trad(cell As Range)
InEnglish = cell
jj = Right(InEnglish, Len(InEnglish) - 4)
j = Left(jj, Len(jj) - 9)
a = Right(InEnglish, 4)
mois = Left(Right(InEnglish, 8), 3)
Select Case mois
Case "Jan": m = 1
Case "Feb": m = 2
Case "Mar": m = 3
Case "Apr": m = 4
Case "May": m = 5
Case "Jun": m = 6
Case "Jul": m = 7
Case "Aug": m = 8
Case "Sep": m = 9
Case "Oct": m = 10
Case "Nov": m = 11
Case "Dec": m = 12
End Select
trad = CDate(j & "." & m & "." & a)
End Function 'ajf
Et selon un judicieux conseil, que naguère, Daniel.M m'avait prodigué:
pour rendre le code compatible avec les différents systèmes de représentation des dates, ( la date retournée, mais non pas la date à traiter ! )
remplace la ligne de code:
trad = CDate(j & "." & m & "." & a)
par : trad = DateSerial(a, m, j) -- Amicalement
Jean-François Aubert {Vaudois de la Côte Lémanique}
"Jean-François Aubert" <à a écrit dans le message de news:
Et encore une autre fonction perso:
Function trad(cell As Range) InEnglish = cell jj = Right(InEnglish, Len(InEnglish) - 4) j = Left(jj, Len(jj) - 9) a = Right(InEnglish, 4) mois = Left(Right(InEnglish, 8), 3) Select Case mois Case "Jan": m = 1 Case "Feb": m = 2 Case "Mar": m = 3 Case "Apr": m = 4 Case "May": m = 5 Case "Jun": m = 6 Case "Jul": m = 7 Case "Aug": m = 8 Case "Sep": m = 9 Case "Oct": m = 10 Case "Nov": m = 11 Case "Dec": m = 12 End Select trad = CDate(j & "." & m & "." & a) End Function 'ajf
AV
Dans le même style
Le mois : =EQUIV(GAUCHE(DROITE(A1;8);3);{"Jan";"Feb";"Mar";"Apr";"May";"Jun";"Jul";"Aug";" Sep";"Oct";"Nov";"Dec"};0)
AV
Dans le même style
Le mois :
=EQUIV(GAUCHE(DROITE(A1;8);3);{"Jan";"Feb";"Mar";"Apr";"May";"Jun";"Jul";"Aug";"
Sep";"Oct";"Nov";"Dec"};0)
Le mois : =EQUIV(GAUCHE(DROITE(A1;8);3);{"Jan";"Feb";"Mar";"Apr";"May";"Jun";"Jul";"Aug";" Sep";"Oct";"Nov";"Dec"};0)
AV
gmore
Nicolas,
j'essaie la formule, mais j'ai une erreur qui dit que la formule n'est pas valide. Je vois que c'est une formule matricielle et je fais Ctrl+Maj+Entree, mais ça ne change rien.
Je dois etre "dans les patates" car j'essaie celle d'Alain et ca ne marche pas non plus.
......
Nicolas,
j'essaie la formule, mais j'ai une erreur qui dit que la
formule n'est pas valide. Je vois que c'est une formule
matricielle et je fais Ctrl+Maj+Entree, mais ça ne change
rien.
Je dois etre "dans les patates" car j'essaie celle d'Alain
et ca ne marche pas non plus.
j'essaie la formule, mais j'ai une erreur qui dit que la formule n'est pas valide. Je vois que c'est une formule matricielle et je fais Ctrl+Maj+Entree, mais ça ne change rien.
Je dois etre "dans les patates" car j'essaie celle d'Alain et ca ne marche pas non plus.
......
Philippe.R
Bonsoir, Sommeprod ne nécessite pas la saisie mode matriciel ; en revanche la formule donnée suppose que le contenu de la cellule soit un texte. Qu'as tu affiché dans la barre de formule, quand tu sélectionnes une cellule de ce type ? -- Amicales Salutations
Retirer A_S_ pour répondre. XL97 / XL2002
"gmore" a écrit dans le message de news:04a501c3a31a$19335ea0$ Nicolas,
j'essaie la formule, mais j'ai une erreur qui dit que la formule n'est pas valide. Je vois que c'est une formule matricielle et je fais Ctrl+Maj+Entree, mais ça ne change rien.
Je dois etre "dans les patates" car j'essaie celle d'Alain et ca ne marche pas non plus.
......
Bonsoir,
Sommeprod ne nécessite pas la saisie mode matriciel ; en revanche la formule donnée suppose que le
contenu de la cellule soit un texte.
Qu'as tu affiché dans la barre de formule, quand tu sélectionnes une cellule de ce type ?
--
Amicales Salutations
A_S_rauphil@wanadoo.fr
Retirer A_S_ pour répondre.
XL97 / XL2002
"gmore" <anonymous@discussions.microsoft.com> a écrit dans le message de
news:04a501c3a31a$19335ea0$a301280a@phx.gbl...
Nicolas,
j'essaie la formule, mais j'ai une erreur qui dit que la
formule n'est pas valide. Je vois que c'est une formule
matricielle et je fais Ctrl+Maj+Entree, mais ça ne change
rien.
Je dois etre "dans les patates" car j'essaie celle d'Alain
et ca ne marche pas non plus.
Bonsoir, Sommeprod ne nécessite pas la saisie mode matriciel ; en revanche la formule donnée suppose que le contenu de la cellule soit un texte. Qu'as tu affiché dans la barre de formule, quand tu sélectionnes une cellule de ce type ? -- Amicales Salutations
Retirer A_S_ pour répondre. XL97 / XL2002
"gmore" a écrit dans le message de news:04a501c3a31a$19335ea0$ Nicolas,
j'essaie la formule, mais j'ai une erreur qui dit que la formule n'est pas valide. Je vois que c'est une formule matricielle et je fais Ctrl+Maj+Entree, mais ça ne change rien.
Je dois etre "dans les patates" car j'essaie celle d'Alain et ca ne marche pas non plus.
......
gmore
Bonjour Alain,
il y a quelque chose que je ne fais pas correctement, car ça ne fonctionne pas. Quand je vois qu'il y a des accolades, je sais que c'est une formule matricielle et même si je fais Ctrl+Maj+Entrée, Excel donne une erreur.
gmore
-----Message d'origine----- Dans le même style
Le mois : =EQUIV(GAUCHE(DROITE(A1;8);3); {"Jan";"Feb";"Mar";"Apr";"May";"Jun";"Jul";"Aug";"
Sep";"Oct";"Nov";"Dec"};0)
AV
Bonjour Alain,
il y a quelque chose que je ne fais pas correctement, car
ça ne fonctionne pas. Quand je vois qu'il y a des
accolades, je sais que c'est une formule matricielle et
même si je fais Ctrl+Maj+Entrée, Excel donne une erreur.
gmore
-----Message d'origine-----
Dans le même style
Le mois :
=EQUIV(GAUCHE(DROITE(A1;8);3);
{"Jan";"Feb";"Mar";"Apr";"May";"Jun";"Jul";"Aug";"
il y a quelque chose que je ne fais pas correctement, car ça ne fonctionne pas. Quand je vois qu'il y a des accolades, je sais que c'est une formule matricielle et même si je fais Ctrl+Maj+Entrée, Excel donne une erreur.
gmore
-----Message d'origine----- Dans le même style
Le mois : =EQUIV(GAUCHE(DROITE(A1;8);3); {"Jan";"Feb";"Mar";"Apr";"May";"Jun";"Jul";"Aug";"
Sep";"Oct";"Nov";"Dec"};0)
AV
AV
il y a quelque chose que je ne fais pas correctement, car ça ne fonctionne pas. Quand je vois qu'il y a des accolades, je sais que c'est une formule matricielle et même si je fais Ctrl+Maj+Entrée, Excel donne une erreur.
Ce n'est pas une formule matricielle mais une formule contenant une matrice de constantes {"Jan";"Feb";"Mar";"Apr";"... que l'on place entre accolades (saisies au clavier !) Il faut donc valider normalement, mais la validation matricielle ne devrait quand même pas générer une erreur
AV
il y a quelque chose que je ne fais pas correctement, car
ça ne fonctionne pas. Quand je vois qu'il y a des
accolades, je sais que c'est une formule matricielle et
même si je fais Ctrl+Maj+Entrée, Excel donne une erreur.
Ce n'est pas une formule matricielle mais une formule contenant une matrice de
constantes {"Jan";"Feb";"Mar";"Apr";"... que l'on place entre accolades
(saisies au clavier !)
Il faut donc valider normalement, mais la validation matricielle ne devrait
quand même pas générer une erreur
il y a quelque chose que je ne fais pas correctement, car ça ne fonctionne pas. Quand je vois qu'il y a des accolades, je sais que c'est une formule matricielle et même si je fais Ctrl+Maj+Entrée, Excel donne une erreur.
Ce n'est pas une formule matricielle mais une formule contenant une matrice de constantes {"Jan";"Feb";"Mar";"Apr";"... que l'on place entre accolades (saisies au clavier !) Il faut donc valider normalement, mais la validation matricielle ne devrait quand même pas générer une erreur
AV
Jack
Merci 1000 fois pour ce petit bout de formule qui me débloque enfin mon travail.
-----Message d'origine----- Salut gmore,
Voici une formule qui devrait fonctionner (attention aux retours à la ligne)