gratifiant > microsoft.* > microsoft.excel

Kyvu (02/09/2004, 16h46)
Bonjour,

J'ai une date qui se présente sous la forme [jj/mm/aa] et
j'aurai besoin de la transformer en une série de lettres
qui aurait la forme [LL LL LL].

Voici les correspondances:

N --> 0
U --> 1
M --> 2
E --> 3
R --> 4
A --> 5
L --> 6
K --> 7
O --> 8
D --> 9

Je dois faire cette conversion en VBA uniquement.
Quelqu'un aurait-il une idée sur le code?

Merci d'avance pour votre aide.

@micalement.

Kyvu On Line!
JpPradier (02/09/2004, 17h07)
Bonjour Kyvu

Attention aux retours à la ligne intempestifs :

Sub codeDate()

toto = Range("a1")
jour = Left(toto, 2)
mois = Mid(toto, 4, 2)
annee = Right(toto, 2)
maDate = jour & mois & annee
monCode = ""
For i = 1 To 6
chiffre = 1 + CByte(Mid(maDate, i, 1))
monCode = monCode & Choose(chiffre, "N", "U", "M", "E", "R", "A", "L", "K", "O", "D")
If i Mod 2 = 0 Then monCode = monCode & " "
Next
Range("b1") = monCode
End Sub

j-p
® © ¿ (02/09/2004, 17h18)
Bonsour ®,
une fonction perso ????
A B
01/03/1992 NU NE DM =NumeralKod(A1)
02/06/2004 NM NL NR
23/12/2004 ME UM NR
04/03/2008 NR NE NO
17/13/2004 date invalide
06/03/2004 NL NE NR

ok !!!

Function numeralkod(target)
'----geedee MPFE le NM ND NR
clair = "0123456789/"
kod = "NUMERALKOD "
numeralkod = ""
If IsDate(target) Then
numeralkod = ""
xxx = Format(target, "dd/mm/yy")
For i = 1 To Len(xxx)
Position = InStr(clair, Mid(xxx, i, 1))
numeralkod = numeralkod & Mid(kod, Position, 1)
Next
Else
numeralkod = "Date invalide"
End If
End Function
[..]
AV (02/09/2004, 17h23)
Une ...juste comme ça... :pour le fun

Sub zzz()
z = ActiveCell.Value2
x = Format(Day(z), "00") & " " & Format(Month(z), "00") & " " & Right(Year(z),
2)
MsgBox
Application.Substitute(Application.Substitute(Appl ication.Substitute(Application
..Substitute(Application.Substitute(Application.Su bstitute(Application.Substitute
(Application.Substitute(Application.Substitute(App lication.Substitute(x, 8,
"O"), 7, "K"), 6, "L"), 5, "A"), 4, "R"), 3, "E"), 2, "M"), 1, "U"), 0, "N"), 9,
"D")
End Sub

AV
Michel Pierron (02/09/2004, 17h32)
Bonsoir Kyvu;

Function Numeralkod$(Info$)
Const Chain1 = "0123456789"
Const Chain2 = "NUMERALKOD"
Dim i%, u%, R$
For i = 1 To Len(Info)
u = InStr(1, Chain1, Mid(Info, i, 1))
If u Then R = R & Mid(Chain2, u, 1)
Next i
Numeralkod = R
End Function

MP

"Kyvu" <anonymous> a écrit dans le message de
news:280a
Bonjour,

J'ai une date qui se présente sous la forme [jj/mm/aa] et
j'aurai besoin de la transformer en une série de lettres
qui aurait la forme [LL LL LL].

Voici les correspondances:

N --> 0
U --> 1
M --> 2
E --> 3
R --> 4
A --> 5
L --> 6
K --> 7
O --> 8
D --> 9

Je dois faire cette conversion en VBA uniquement.
Quelqu'un aurait-il une idée sur le code?

Merci d'avance pour votre aide.

@micalement.

Kyvu On Line!
Michel Pierron (02/09/2004, 17h40)
Hi geedee;
Comme dit l'autre, les grands esprits...
mais tu m'as quand même grillé sur ce coup la.
:-) MP

"® © ¿" <anonymous> a écrit dans le message de
news:280a
Bonsour ®,
une fonction perso ????
A B
01/03/1992 NU NE DM =NumeralKod(A1)
02/06/2004 NM NL NR
23/12/2004 ME UM NR
04/03/2008 NR NE NO
17/13/2004 date invalide
06/03/2004 NL NE NR

ok !!!

Function numeralkod(target)
'----geedee MPFE le NM ND NR
clair = "0123456789/"
kod = "NUMERALKOD "
numeralkod = ""
If IsDate(target) Then
numeralkod = ""
xxx = Format(target, "dd/mm/yy")
For i = 1 To Len(xxx)
Position = InStr(clair, Mid(xxx, i, 1))
numeralkod = numeralkod & Mid(kod, Position, 1)
Next
Else
numeralkod = "Date invalide"
End If
End Function
[..]
® © ¿ (02/09/2004, 17h56)
;o)))
oui pour le fun ....
:-(

'tain y'a de l'electricité dans l'air !!!
ça dégaine rapide ce soir...

@+
[..]
Discussions similaires