VBA EXCEL TRANSFORME UNE DATE ENREGISTRÉE AU FORMAT ANGLAIS (BOGUE D'INVERSION M
cs_iridium
Messages postés2Date d'inscriptionmercredi 18 décembre 2002StatutMembreDernière intervention26 mai 2006
-
26 mai 2006 à 10:17
FENETRES
Messages postés196Date d'inscriptionjeudi 15 juillet 2004StatutMembreDernière intervention14 avril 2009
-
15 févr. 2007 à 18:30
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
FENETRES
Messages postés196Date d'inscriptionjeudi 15 juillet 2004StatutMembreDernière intervention14 avril 2009 15 févr. 2007 à 18:30
Autres problèmes liés à l'import de fichier :
Sur ce site, à l'adresse ci-dessous, vous trouverez le moyen de convertir en nombre une page de cellules sélectionnées ainsi que la possibilité d'appliquer un format monétaire ou de pourcentage.
FENETRES
Messages postés196Date d'inscriptionjeudi 15 juillet 2004StatutMembreDernière intervention14 avril 2009 17 janv. 2007 à 18:23
'Pour ceux qui souhaite récupérer le format déclaré dans les paramètres régionaux
Option Explicit
Private Declare Function GetLocaleInfo Lib "kernel32" Alias "GetLocaleInfoA" (ByVal Locale As Long, ByVal LCTYPE As Long, ByVal lpLCData As String, ByVal cchData As Long) As Long
Private Declare Function GetUserDefaultLCID Lib "kernel32" () As Long
Private Function getRegDateType() As String
'Retourne, pour l'utilisateur actuel, le type de date spécifié dans
'les paramètres régionaux du panneau de configuration de Windows.
Const LOCALE_SSHORTDATE = &H1F
Dim Symbol As String
Dim RetVal1 As Long
Dim RetVal2 As Long
Dim lpLCDataVar As String
Dim Pos As Integer
Dim Locale As Long
Locale = GetUserDefaultLCID()
RetVal1 = GetLocaleInfo(Locale, LOCALE_SSHORTDATE, lpLCDataVar, 0)
Symbol = String$(RetVal1, 0)
RetVal2 = GetLocaleInfo(Locale, LOCALE_SSHORTDATE, Symbol, RetVal1)
Pos = InStr(Symbol, Chr$(0))
If Pos > 0 Then
getRegDateType = LCase(Left$(Symbol, Pos - 1))
End If
End Function
cs_jacquito
Messages postés7Date d'inscriptionvendredi 21 mars 2003StatutMembreDernière intervention22 juillet 2006 22 juil. 2006 à 19:44
Bravo et tres bien ecris
FENETRES
Messages postés196Date d'inscriptionjeudi 15 juillet 2004StatutMembreDernière intervention14 avril 2009 15 juin 2006 à 10:12
C'était le but recherché. Comme tout le monde, j'ai profité des sources éditées sur Internet alors... il faut savoir renvoyer l'ascenseur et rendre service à son tour !
koaladv
Messages postés2Date d'inscriptionvendredi 20 mai 2005StatutMembreDernière intervention10 juin 2006 10 juin 2006 à 23:55
Un grand merci de ma part egalement car ce code est très bien fait et surtout tres bien commenté.
cs_iridium
Messages postés2Date d'inscriptionmercredi 18 décembre 2002StatutMembreDernière intervention26 mai 2006 26 mai 2006 à 10:17
Un grand merci car aussi je rencontre ce problème et ce code va m'être bien utile
15 févr. 2007 à 18:30
Sur ce site, à l'adresse ci-dessous, vous trouverez le moyen de convertir en nombre une page de cellules sélectionnées ainsi que la possibilité d'appliquer un format monétaire ou de pourcentage.
http://www.vbfrance.com/codes/VBA-EXCEL-CONVERTIR-NOMBRE-APPLIQUER-FORMAT-MONETAIRE-OU_41270.aspx
17 janv. 2007 à 18:23
Option Explicit
Private Declare Function GetLocaleInfo Lib "kernel32" Alias "GetLocaleInfoA" (ByVal Locale As Long, ByVal LCTYPE As Long, ByVal lpLCData As String, ByVal cchData As Long) As Long
Private Declare Function GetUserDefaultLCID Lib "kernel32" () As Long
Private Function getRegDateType() As String
'Retourne, pour l'utilisateur actuel, le type de date spécifié dans
'les paramètres régionaux du panneau de configuration de Windows.
Const LOCALE_SSHORTDATE = &H1F
Dim Symbol As String
Dim RetVal1 As Long
Dim RetVal2 As Long
Dim lpLCDataVar As String
Dim Pos As Integer
Dim Locale As Long
Locale = GetUserDefaultLCID()
RetVal1 = GetLocaleInfo(Locale, LOCALE_SSHORTDATE, lpLCDataVar, 0)
Symbol = String$(RetVal1, 0)
RetVal2 = GetLocaleInfo(Locale, LOCALE_SSHORTDATE, Symbol, RetVal1)
Pos = InStr(Symbol, Chr$(0))
If Pos > 0 Then
getRegDateType = LCase(Left$(Symbol, Pos - 1))
End If
End Function
22 juil. 2006 à 19:44
15 juin 2006 à 10:12
10 juin 2006 à 23:55
26 mai 2006 à 10:17