VBA EXCEL TRANSFORME UNE DATE ENREGISTRÉE AU FORMAT ANGLAIS (BOGUE D'INVERSION M

cs_iridium Messages postés 2 Date d'inscription mercredi 18 décembre 2002 Statut Membre Dernière intervention 26 mai 2006 - 26 mai 2006 à 10:17
FENETRES Messages postés 196 Date d'inscription jeudi 15 juillet 2004 Statut Membre Dernière intervention 14 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.

https://codes-sources.commentcamarche.net/source/36686-vba-excel-transforme-une-date-enregistree-au-format-anglais-bogue-d-inversion-mois-jour

FENETRES Messages postés 196 Date d'inscription jeudi 15 juillet 2004 Statut Membre Dernière intervention 14 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.

http://www.vbfrance.com/codes/VBA-EXCEL-CONVERTIR-NOMBRE-APPLIQUER-FORMAT-MONETAIRE-OU_41270.aspx
FENETRES Messages postés 196 Date d'inscription jeudi 15 juillet 2004 Statut Membre Dernière intervention 14 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és 7 Date d'inscription vendredi 21 mars 2003 Statut Membre Dernière intervention 22 juillet 2006
22 juil. 2006 à 19:44
Bravo et tres bien ecris
FENETRES Messages postés 196 Date d'inscription jeudi 15 juillet 2004 Statut Membre Dernière intervention 14 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és 2 Date d'inscription vendredi 20 mai 2005 Statut Membre Dernière intervention 10 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és 2 Date d'inscription mercredi 18 décembre 2002 Statut Membre Dernière intervention 26 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
Rejoignez-nous