LastLogon AD 2000

Le
BZP
Bonjour à tous !

N'étant pas du tout programeur, j'ai du mal a réaliser une conversion.

Je souhaiterai avoir une fonction en VB (pour pouvoir l'intégrer dans
une macro VB Excel et/ou Access) qui prend comme parametre en entrée
une chaine de caractère (qui est un timestamp LastLogon d'active
directory) et qui retourne la date du jour format JJ/MM/AAAA.

J'ai trouvé ce script :

' From the book "Windows XP Cookbook"
' ISBN: 0596007256

' SCRIPT CONFIGURATION
strUserDN = "<UserDN>" ' e.g. cn=rallen,ou=Sales,dc=rallencorp,dc=
=com
' END CONFIGURATION
set objUser = GetObject("LDAP://" & strUserDN)
set objLogon = objUser.Get("lastLogonTimestamp")
intLogonTime = objLogon.HighPart * (2^32) + objLogon.LowPart
intLogonTime = intLogonTime / (60 * 10000000)
intLogonTime = intLogonTime / 1440
WScript.Echo "Approx last logon timestamp: " & intLogonTime +
#1/1/1601#

Mais il se connecte à Active Directory. Je souhaite pour ma part juste
faire une conversion.
J'ai essayé de bidouiller mais HighPart ne fonctionne que lorsque il
y a un objet. Bref je m'arrete la j'y connais pas grand chose.

Je récapitule.

MaFonction( Chaine ) -> DATE

Exemple de chaine : "12812000000000000"

PS c'est bien une CHAINE que j'ai pas pas un entier.

Merci a ceux qui comprennent mieu que moi ce bout de code :)

--
P.A.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Gilles LAURENT [MVP]
Le #681290
"BZP" news:
| Bonjour à tous !

Bonsoir,

| Je souhaiterai avoir une fonction en VB (pour pouvoir l'intégrer dans
| une macro VB Excel et/ou Access) qui prend comme parametre en entrée
| une chaine de caractère (qui est un timestamp LastLogon d'active
| directory) et qui retourne la date du jour format JJ/MM/AAAA.
[...]

Ci-dessous une fonction VBScript permettant cette conversion.

--- Coupez ici : TimestampToDate.vbs ---
' En entrée le timestamp de type Interger8 (64bits) sous la forme
' d'une chaine de caractères et en sortie la date associée au format
' jj/mm/aaaa. La timezone n'est pas prise en compte dans cet exemple
Function TimestampToDate (strTimestamp)
TimestampToDate = FormatDateTime ( _
#1/1/1601# + CDbl (strTimestamp) / 1E7 / 86400, VBShortDate _
)
End Function

' conversion d'un timestamp (02/07/2007)
WScript.Echo TimestampToDate ("128278660578822139")
--- Coupez ici : TimestampToDate.vbs ---

--
Gilles LAURENT [MVP]
http://glsft.free.fr
BZP
Le #680966
On 11 juil, 23:50, "Gilles LAURENT [MVP]"
"BZP" | Bonjour à tous !

Bonsoir,

| Je souhaiterai avoir une fonction en VB (pour pouvoir l'intégrer dans
| une macro VB Excel et/ou Access) qui prend comme parametre en entrée
| une chaine de caractère (qui est un timestamp LastLogon d'active
| directory) et qui retourne la date du jour format JJ/MM/AAAA.
[...]

Ci-dessous une fonction VBScript permettant cette conversion.

--- Coupez ici : TimestampToDate.vbs ---
' En entrée le timestamp de type Interger8 (64bits) sous la forme
' d'une chaine de caractères et en sortie la date associée au format
' jj/mm/aaaa. La timezone n'est pas prise en compte dans cet exemple
Function TimestampToDate (strTimestamp)
TimestampToDate = FormatDateTime ( _
#1/1/1601# + CDbl (strTimestamp) / 1E7 / 86400, VBShortDate _
)
End Function

' conversion d'un timestamp (02/07/2007)
WScript.Echo TimestampToDate ("128278660578822139")
--- Coupez ici : TimestampToDate.vbs ---

--
Gilles LAURENT [MVP]http://glsft.free.fr


Maaarci beaucoup.

--
P.A.

Publicité
Poster une réponse
Anonyme