Private Declare Function GetSystemDefaultLangID Lib "kernel32" () As Long
Private Declare Function VerLanguageName Lib "kernel32" Alias "VerLanguageNameA" (ByVal wLang As Long, ByVal szLang As String, ByVal nSize As Long) As Long
Sub GetSystemLanguage(ByRef LongValue As Long, ByRef StringValue As String)
' ID
LongValue = "&H" & Right(Hex(GetSystemDefaultLangID()), 3)
' Chaîne
StringValue = String(255, 0)
VerLanguageName LongValue, StringValue, Len(StringValue)
StringValue = Left$(StringValue, InStr(1, StringValue, Chr$(0)) - 1)
End Sub
'
'
' ===========
' UTILISATION
' ===========
'
Private Sub Exemple()
Dim ID As Long, sVal As String
Call GetSystemLanguage(ID, sVal)
MsgBox "ID langue : '" & CStr(ID) & "' => '" & sVal & "'"
End Sub