Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Je bloque encore sur les formats

10 réponses
Avatar
jfd
Access 2003
Je cherche à pouvoir changer les formats de certains champs, monétaires ou
autres (champs g qui pourrait devenir kg) et à en modifier l’extension avec
une ou plusieurs listes de choix ou juste un ou des champs définis dans ma
base de données mais je bloque.

Je voudrais donc sélectionner certain champs et leur imposer mon format sur
demande, et cela étant modifiable à l’ouverture de ma base par exemple.

J’avais posée une question presque similaire sur les formats monétaire mais
je n’ai pas réussi à mettre en application le code de façon correcte (désolé
Gilbert et merci encore, j’ai bien réussi à récupérer les paramètres
régionaux mais pas à les changer avec un code)
Débutant pour tout ce qui est codes et déclarations.
Alors si quelqu’un peu m’aider et essayer de m’expliquer, I will be really
happy.
Merci par avance

10 réponses

Avatar
Gilbert
Bonjour,
Quelques considérations personnelles sur les options régionales :

Pour ce qui est du format monétaire, et des options régionales en général,
c'est ton application qui doit s'y adapter et non pas le contraire.
Si tu modifies le format monétaire (par exemple) comment peux-tu connaitre
l'utilisation qui en est faite dans d'autres programmes et donc les
conséquences du changement?
Même si tu restitue le format d'origine à la fermeture d'Access, tu n'est
pas à l'abri d'un problème (plantage de la base, coupure de courant) qui
empêchera la restitution du format.

Pour ta question sur "changer les formats de certains champs", j'avoue ne
pas comprendre exactement ce que tu veux faire.

Gilbert


"jfd" a écrit dans le message de
news:
Access 2003
Je cherche à pouvoir changer les formats de certains champs, monétaires
ou

autres (champs g qui pourrait devenir kg) et à en modifier l'extension
avec

une ou plusieurs listes de choix ou juste un ou des champs définis dans ma
base de données mais je bloque.

Je voudrais donc sélectionner certain champs et leur imposer mon format
sur

demande, et cela étant modifiable à l'ouverture de ma base par exemple.

J'avais posée une question presque similaire sur les formats monétaire
mais

je n'ai pas réussi à mettre en application le code de façon correcte
(désolé

Gilbert et merci encore, j'ai bien réussi à récupérer les paramètres
régionaux mais pas à les changer avec un code)
Débutant pour tout ce qui est codes et déclarations.
Alors si quelqu'un peu m'aider et essayer de m'expliquer, I will be
really

happy.
Merci par avance



Avatar
jfd
Bonjour Gilbert
Monoposte Access 2003
Il s’agit d’une base de données pour gérer des recettes de pâtisseries ,base
utilisable dans plusieurs langues, tous les boutons de commandes et les
ingrédients, sont prévues dans 4 langues pour les commandes, et huit langues
pour les ingrédients , mais pour l’instant je bloque encore sur le format
monétaire que j’aimerais pouvoir choisir à l’ouverture avec une liste de
choix ou une zone de texte afin que chacun puisse au démarrage choisir sa
monnaie de travail et avoir un affichage forms ou états qui corresponde a son
souhait.
L’Espagnol correspondant à plusieurs pays, portugais idem donc plusieurs
monnaies à choisir. Cette appli peut être utilisée dans plusieurs pays et est
destinée à être distribuée vide au départ ou juste quelque exemples, a chacun
de rentrer les prix d’achat.
Grace à ton aide j ‘arrive à récupérer les paramètres Windows quand je mets
mes champs sur formats monétaires mais après le premier changement je repasse
sur des champs fixes.(style euro ou autres)
Je n’y connais rien en code ou variable et je pense qu’il y a quelque chose
que je ne sais pas faire comme il le faudrait….
De tout façon un grand merci pour le temps consacré à aider les nouveaux.
PS dans Excel si tu changes le format régionale ton affichage monétaire
change de suite , pas dans Access pourquoi ?
Un très grand merci pour ta patience…..



Bonjour,
Quelques considérations personnelles sur les options régionales :

Pour ce qui est du format monétaire, et des options régionales en général,
c'est ton application qui doit s'y adapter et non pas le contraire.
Si tu modifies le format monétaire (par exemple) comment peux-tu connaitre
l'utilisation qui en est faite dans d'autres programmes et donc les
conséquences du changement?
Même si tu restitue le format d'origine à la fermeture d'Access, tu n'est
pas à l'abri d'un problème (plantage de la base, coupure de courant) qui
empêchera la restitution du format.

Pour ta question sur "changer les formats de certains champs", j'avoue ne
pas comprendre exactement ce que tu veux faire.

Gilbert


"jfd" a écrit dans le message de
news:
Access 2003
Je cherche à pouvoir changer les formats de certains champs, monétaires
ou

autres (champs g qui pourrait devenir kg) et à en modifier l'extension
avec

une ou plusieurs listes de choix ou juste un ou des champs définis dans ma
base de données mais je bloque.

Je voudrais donc sélectionner certain champs et leur imposer mon format
sur

demande, et cela étant modifiable à l'ouverture de ma base par exemple.

J'avais posée une question presque similaire sur les formats monétaire
mais

je n'ai pas réussi à mettre en application le code de façon correcte
(désolé

Gilbert et merci encore, j'ai bien réussi à récupérer les paramètres
régionaux mais pas à les changer avec un code)
Débutant pour tout ce qui est codes et déclarations.
Alors si quelqu'un peu m'aider et essayer de m'expliquer, I will be
really

happy.
Merci par avance








Avatar
jfd
Précision importante
Après test et retest pas de problème pour les nombres exemple :
Langue anglaise les( . et , ) OK retour en français changement effectués
sans problème
Par contre le symbole monétaire ne change que si je mets sur monétaire et se
calle de lui-même sur le format de la langue choisie
(£#,##0.00;"-£"#,##0.00)mais ensuite refuse de changer à nouveau..
Il semble y avoir un blocage juste sur le symbole monétaire.
Merci



Access 2003
Je cherche à pouvoir changer les formats de certains champs, monétaires ou
autres (champs g qui pourrait devenir kg) et à en modifier l’extension avec
une ou plusieurs listes de choix ou juste un ou des champs définis dans ma
base de données mais je bloque.

Je voudrais donc sélectionner certain champs et leur imposer mon format sur
demande, et cela étant modifiable à l’ouverture de ma base par exemple.

J’avais posée une question presque similaire sur les formats monétaire mais
je n’ai pas réussi à mettre en application le code de façon correcte (désolé
Gilbert et merci encore, j’ai bien réussi à récupérer les paramètres
régionaux mais pas à les changer avec un code)
Débutant pour tout ce qui est codes et déclarations.
Alors si quelqu’un peu m’aider et essayer de m’expliquer, I will be really
happy.
Merci par avance



Avatar
Gilbert
Bonsoir,

Utilise le code suivant dans l'évènement 'Sur ouverture' de ton formulaire:
A chaque ouverture il va lire le symbole monétaire en cours et l'utilise
pour définir le format de ton contrôle.
Si tu as plusieurs contrôles monétaires, il faut bien sûr répéter la ligne.
Par contre, si tu veux que l'utilisateur puisse choisir une monnaie
différente de celle des options régionales, c'est un autre problème.

Dim symbole As String
symbole = SymboleMonetaireRegional
Me.LeNomDeTonControleMonétaire.Format = symbole & " #,00;-" & symbole & "
#,00"

Gilbert

"jfd" a écrit dans le message de
news:
Précision importante
Après test et retest pas de problème pour les nombres exemple :
Langue anglaise les( . et , ) OK retour en français changement effectués
sans problème
Par contre le symbole monétaire ne change que si je mets sur monétaire et
se

calle de lui-même sur le format de la langue choisie
(£#,##0.00;"-£"#,##0.00)mais ensuite refuse de changer à nouveau..
Il semble y avoir un blocage juste sur le symbole monétaire.
Merci



Access 2003
Je cherche à pouvoir changer les formats de certains champs, monétaires
ou


autres (champs g qui pourrait devenir kg) et à en modifier l'extension
avec


une ou plusieurs listes de choix ou juste un ou des champs définis dans
ma


base de données mais je bloque.

Je voudrais donc sélectionner certain champs et leur imposer mon format
sur


demande, et cela étant modifiable à l'ouverture de ma base par exemple.

J'avais posée une question presque similaire sur les formats monétaire
mais


je n'ai pas réussi à mettre en application le code de façon correcte
(désolé


Gilbert et merci encore, j'ai bien réussi à récupérer les paramètres
régionaux mais pas à les changer avec un code)
Débutant pour tout ce qui est codes et déclarations.
Alors si quelqu'un peu m'aider et essayer de m'expliquer, I will be
really


happy.
Merci par avance





Avatar
jfd
Bonjour et encore un grand merci
Un grand pas en avant mais pas encore avec tous les formats monétaires
Blocage par exemple sur le Coréen, Japonais et d’autres qui ont des formats
plus complexes
Voila ou j’en suis :

Module 4
Option Compare Database

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" ()
Private Const LOCALE_SCURRENCY = &H14 'Symbole monétaire local. Ex : ?
Private Const LOCALE_SINTLSYMBOL = &H15 'Symbole monétaire intl
(international???). Ex : FRF
Private Const LOCALE_SMONDECIMALSEP = &H16 ' Séparateur décimal monétaire
Private Const LOCALE_SMONTHOUSANDSEP = &H17 ' Séparateur de millier monétaire
Private Const LOCALE_ICURRDIGITS = &H19 ' Précision décimale monétaire
' (nombre de chiffre après la virgule)



Public Function SymboleMonetaireRegional() As String
Dim Symbol As String
Dim iRet1 As Long
Dim iRet2 As Long
Dim lpLCDataVar As String
Dim pos As Integer
Dim LOCALE As Long

LOCALE = GetUserDefaultLCID()
iRet1 = GetLocaleInfo(LOCALE, LOCALE_SCURRENCY, lpLCDataVar, 0)

Symbol = String$(iRet1, 0)
iRet2 = GetLocaleInfo(LOCALE, LOCALE_SCURRENCY, Symbol, iRet1)
pos = InStr(Symbol, Chr$(0))
If pos > 0 Then
Symbol = Left$(Symbol, pos - 1)
SymboleMonetaireRegional = Symbol
End If
End Function

Et sur ouverture de mes formulaires le code que tu m’envoyé aussi

Private Sub Form_Open(Cancel As Integer)
Dim symbole As String
symbole = SymboleMonetaireRegional
Me.Texte369.Format = symbole & " #,00;-" & symbole & " #,00"
Me.Texte377.Format = symbole & " #,00;-" & symbole & " #,00"
Me.Texte375.Format = symbole & " #,00;-" & symbole & " #,00"
End Sub

Que dois faire maintenant pour pouvoir avoir aussi les formats un peu
spéciaux aussi dans mes formulaires ?



Bonsoir,

Utilise le code suivant dans l'évènement 'Sur ouverture' de ton formulaire:
A chaque ouverture il va lire le symbole monétaire en cours et l'utilise
pour définir le format de ton contrôle.
Si tu as plusieurs contrôles monétaires, il faut bien sûr répéter la ligne.
Par contre, si tu veux que l'utilisateur puisse choisir une monnaie
différente de celle des options régionales, c'est un autre problème.

Dim symbole As String
symbole = SymboleMonetaireRegional
Me.LeNomDeTonControleMonétaire.Format = symbole & " #,00;-" & symbole & "
#,00"

Gilbert

"jfd" a écrit dans le message de
news:
Précision importante
Après test et retest pas de problème pour les nombres exemple :
Langue anglaise les( . et , ) OK retour en français changement effectués
sans problème
Par contre le symbole monétaire ne change que si je mets sur monétaire et
se

calle de lui-même sur le format de la langue choisie
(£#,##0.00;"-£"#,##0.00)mais ensuite refuse de changer à nouveau..
Il semble y avoir un blocage juste sur le symbole monétaire.
Merci



Access 2003
Je cherche à pouvoir changer les formats de certains champs, monétaires
ou


autres (champs g qui pourrait devenir kg) et à en modifier l'extension
avec


une ou plusieurs listes de choix ou juste un ou des champs définis dans
ma


base de données mais je bloque.

Je voudrais donc sélectionner certain champs et leur imposer mon format
sur


demande, et cela étant modifiable à l'ouverture de ma base par exemple.

J'avais posée une question presque similaire sur les formats monétaire
mais


je n'ai pas réussi à mettre en application le code de façon correcte
(désolé


Gilbert et merci encore, j'ai bien réussi à récupérer les paramètres
régionaux mais pas à les changer avec un code)
Débutant pour tout ce qui est codes et déclarations.
Alors si quelqu'un peu m'aider et essayer de m'expliquer, I will be
really


happy.
Merci par avance










Avatar
Gilbert
Bonjour,

Quels sont ces formats et qu'ont-ils de spéciaux?
J'avoue ne jamais avoir utilisé de yen ou de monnaie coréenne dont je ne
connais même pas le nom.

--
Gilbert


"jfd" a écrit dans le message de news:

Bonjour et encore un grand merci
Un grand pas en avant mais pas encore avec tous les formats monétaires
Blocage par exemple sur le Coréen, Japonais et d'autres qui ont des
formats
plus complexes
Voila ou j'en suis :

Module 4
Option Compare Database

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" ()
Private Const LOCALE_SCURRENCY = &H14 'Symbole monétaire local. Ex : ?
Private Const LOCALE_SINTLSYMBOL = &H15 'Symbole monétaire intl
(international???). Ex : FRF
Private Const LOCALE_SMONDECIMALSEP = &H16 ' Séparateur décimal monétaire
Private Const LOCALE_SMONTHOUSANDSEP = &H17 ' Séparateur de millier
monétaire
Private Const LOCALE_ICURRDIGITS = &H19 ' Précision décimale monétaire
' (nombre de chiffre après la virgule)



Public Function SymboleMonetaireRegional() As String
Dim Symbol As String
Dim iRet1 As Long
Dim iRet2 As Long
Dim lpLCDataVar As String
Dim pos As Integer
Dim LOCALE As Long

LOCALE = GetUserDefaultLCID()
iRet1 = GetLocaleInfo(LOCALE, LOCALE_SCURRENCY, lpLCDataVar, 0)

Symbol = String$(iRet1, 0)
iRet2 = GetLocaleInfo(LOCALE, LOCALE_SCURRENCY, Symbol, iRet1)
pos = InStr(Symbol, Chr$(0))
If pos > 0 Then
Symbol = Left$(Symbol, pos - 1)
SymboleMonetaireRegional = Symbol
End If
End Function

Et sur ouverture de mes formulaires le code que tu m'envoyé aussi

Private Sub Form_Open(Cancel As Integer)
Dim symbole As String
symbole = SymboleMonetaireRegional
Me.Texte369.Format = symbole & " #,00;-" & symbole & " #,00"
Me.Texte377.Format = symbole & " #,00;-" & symbole & " #,00"
Me.Texte375.Format = symbole & " #,00;-" & symbole & " #,00"
End Sub

Que dois faire maintenant pour pouvoir avoir aussi les formats un peu
spéciaux aussi dans mes formulaires ?



Bonsoir,

Utilise le code suivant dans l'évènement 'Sur ouverture' de ton
formulaire:
A chaque ouverture il va lire le symbole monétaire en cours et l'utilise
pour définir le format de ton contrôle.
Si tu as plusieurs contrôles monétaires, il faut bien sûr répéter la
ligne.
Par contre, si tu veux que l'utilisateur puisse choisir une monnaie
différente de celle des options régionales, c'est un autre problème.

Dim symbole As String
symbole = SymboleMonetaireRegional
Me.LeNomDeTonControleMonétaire.Format = symbole & " #,00;-" & symbole & "
#,00"

Gilbert

"jfd" a écrit dans le message de
news:
Précision importante
Après test et retest pas de problème pour les nombres exemple :
Langue anglaise les( . et , ) OK retour en français changement
effectués
sans problème
Par contre le symbole monétaire ne change que si je mets sur monétaire
et
se

calle de lui-même sur le format de la langue choisie
(£#,##0.00;"-£"#,##0.00)mais ensuite refuse de changer à nouveau..
Il semble y avoir un blocage juste sur le symbole monétaire.
Merci



Access 2003
Je cherche à pouvoir changer les formats de certains champs,
monétaires
ou


autres (champs g qui pourrait devenir kg) et à en modifier
l'extension
avec


une ou plusieurs listes de choix ou juste un ou des champs définis
dans
ma


base de données mais je bloque.

Je voudrais donc sélectionner certain champs et leur imposer mon
format
sur


demande, et cela étant modifiable à l'ouverture de ma base par
exemple.

J'avais posée une question presque similaire sur les formats
monétaire
mais


je n'ai pas réussi à mettre en application le code de façon correcte
(désolé


Gilbert et merci encore, j'ai bien réussi à récupérer les paramètres
régionaux mais pas à les changer avec un code)
Débutant pour tout ce qui est codes et déclarations.
Alors si quelqu'un peu m'aider et essayer de m'expliquer, I will be
really


happy.
Merci par avance












Avatar
jfd
Voila en quoi, ils sont spéciaux et ils ne s’affichent pas correctement au
niveau des points ou virgules et pas de symbole dans mes formulaires et états.

₩123,456,789 COREE

¥123,456,789 JAPON

S/. 123,456,789.00 PEROU

123.456.789,00 kr. ISLANDE

Merci de votre aide.



Bonjour,

Quels sont ces formats et qu'ont-ils de spéciaux?
J'avoue ne jamais avoir utilisé de yen ou de monnaie coréenne dont je ne
connais même pas le nom.

--
Gilbert


"jfd" a écrit dans le message de news:

Bonjour et encore un grand merci
Un grand pas en avant mais pas encore avec tous les formats monétaires
Blocage par exemple sur le Coréen, Japonais et d'autres qui ont des
formats
plus complexes
Voila ou j'en suis :

Module 4
Option Compare Database

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" ()
Private Const LOCALE_SCURRENCY = &H14 'Symbole monétaire local. Ex : ?
Private Const LOCALE_SINTLSYMBOL = &H15 'Symbole monétaire intl
(international???). Ex : FRF
Private Const LOCALE_SMONDECIMALSEP = &H16 ' Séparateur décimal monétaire
Private Const LOCALE_SMONTHOUSANDSEP = &H17 ' Séparateur de millier
monétaire
Private Const LOCALE_ICURRDIGITS = &H19 ' Précision décimale monétaire
' (nombre de chiffre après la virgule)



Public Function SymboleMonetaireRegional() As String
Dim Symbol As String
Dim iRet1 As Long
Dim iRet2 As Long
Dim lpLCDataVar As String
Dim pos As Integer
Dim LOCALE As Long

LOCALE = GetUserDefaultLCID()
iRet1 = GetLocaleInfo(LOCALE, LOCALE_SCURRENCY, lpLCDataVar, 0)

Symbol = String$(iRet1, 0)
iRet2 = GetLocaleInfo(LOCALE, LOCALE_SCURRENCY, Symbol, iRet1)
pos = InStr(Symbol, Chr$(0))
If pos > 0 Then
Symbol = Left$(Symbol, pos - 1)
SymboleMonetaireRegional = Symbol
End If
End Function

Et sur ouverture de mes formulaires le code que tu m'envoyé aussi

Private Sub Form_Open(Cancel As Integer)
Dim symbole As String
symbole = SymboleMonetaireRegional
Me.Texte369.Format = symbole & " #,00;-" & symbole & " #,00"
Me.Texte377.Format = symbole & " #,00;-" & symbole & " #,00"
Me.Texte375.Format = symbole & " #,00;-" & symbole & " #,00"
End Sub

Que dois faire maintenant pour pouvoir avoir aussi les formats un peu
spéciaux aussi dans mes formulaires ?



Bonsoir,

Utilise le code suivant dans l'évènement 'Sur ouverture' de ton
formulaire:
A chaque ouverture il va lire le symbole monétaire en cours et l'utilise
pour définir le format de ton contrôle.
Si tu as plusieurs contrôles monétaires, il faut bien sûr répéter la
ligne.
Par contre, si tu veux que l'utilisateur puisse choisir une monnaie
différente de celle des options régionales, c'est un autre problème.

Dim symbole As String
symbole = SymboleMonetaireRegional
Me.LeNomDeTonControleMonétaire.Format = symbole & " #,00;-" & symbole & "
#,00"

Gilbert

"jfd" a écrit dans le message de
news:
Précision importante
Après test et retest pas de problème pour les nombres exemple :
Langue anglaise les( . et , ) OK retour en français changement
effectués
sans problème
Par contre le symbole monétaire ne change que si je mets sur monétaire
et
se

calle de lui-même sur le format de la langue choisie
(£#,##0.00;"-£"#,##0.00)mais ensuite refuse de changer à nouveau..
Il semble y avoir un blocage juste sur le symbole monétaire.
Merci



Access 2003
Je cherche à pouvoir changer les formats de certains champs,
monétaires
ou


autres (champs g qui pourrait devenir kg) et à en modifier
l'extension
avec


une ou plusieurs listes de choix ou juste un ou des champs définis
dans
ma


base de données mais je bloque.

Je voudrais donc sélectionner certain champs et leur imposer mon
format
sur


demande, et cela étant modifiable à l'ouverture de ma base par
exemple.

J'avais posée une question presque similaire sur les formats
monétaire
mais


je n'ai pas réussi à mettre en application le code de façon correcte
(désolé


Gilbert et merci encore, j'ai bien réussi à récupérer les paramètres
régionaux mais pas à les changer avec un code)
Débutant pour tout ce qui est codes et déclarations.
Alors si quelqu'un peu m'aider et essayer de m'expliquer, I will be
really


happy.
Merci par avance

















Avatar
jfd
La formule est super mais comment faire pour que mes champs passent
directement sur le format local comme dans Excel selon le symbole régional
Windows, je pense que cela faisait parti de vos premiers messages mais je
n'arrive pas à l'adapter correctement et j'en suis bien confus. Le module
semble Ok mais comment le relier à mes champs?
Ou est qu'il vaut mieux rester à vos derniers conseils?
Merci bbbbbbbbbbbbbbbbbeaucoup.



Voila en quoi, ils sont spéciaux et ils ne s’affichent pas correctement au
niveau des points ou virgules et pas de symbole dans mes formulaires et états.

₩123,456,789 COREE

¥123,456,789 JAPON

S/. 123,456,789.00 PEROU

123.456.789,00 kr. ISLANDE

Merci de votre aide.



Bonjour,

Quels sont ces formats et qu'ont-ils de spéciaux?
J'avoue ne jamais avoir utilisé de yen ou de monnaie coréenne dont je ne
connais même pas le nom.

--
Gilbert


"jfd" a écrit dans le message de news:

Bonjour et encore un grand merci
Un grand pas en avant mais pas encore avec tous les formats monétaires
Blocage par exemple sur le Coréen, Japonais et d'autres qui ont des
formats
plus complexes
Voila ou j'en suis :

Module 4
Option Compare Database

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" ()
Private Const LOCALE_SCURRENCY = &H14 'Symbole monétaire local. Ex : ?
Private Const LOCALE_SINTLSYMBOL = &H15 'Symbole monétaire intl
(international???). Ex : FRF
Private Const LOCALE_SMONDECIMALSEP = &H16 ' Séparateur décimal monétaire
Private Const LOCALE_SMONTHOUSANDSEP = &H17 ' Séparateur de millier
monétaire
Private Const LOCALE_ICURRDIGITS = &H19 ' Précision décimale monétaire
' (nombre de chiffre après la virgule)



Public Function SymboleMonetaireRegional() As String
Dim Symbol As String
Dim iRet1 As Long
Dim iRet2 As Long
Dim lpLCDataVar As String
Dim pos As Integer
Dim LOCALE As Long

LOCALE = GetUserDefaultLCID()
iRet1 = GetLocaleInfo(LOCALE, LOCALE_SCURRENCY, lpLCDataVar, 0)

Symbol = String$(iRet1, 0)
iRet2 = GetLocaleInfo(LOCALE, LOCALE_SCURRENCY, Symbol, iRet1)
pos = InStr(Symbol, Chr$(0))
If pos > 0 Then
Symbol = Left$(Symbol, pos - 1)
SymboleMonetaireRegional = Symbol
End If
End Function

Et sur ouverture de mes formulaires le code que tu m'envoyé aussi

Private Sub Form_Open(Cancel As Integer)
Dim symbole As String
symbole = SymboleMonetaireRegional
Me.Texte369.Format = symbole & " #,00;-" & symbole & " #,00"
Me.Texte377.Format = symbole & " #,00;-" & symbole & " #,00"
Me.Texte375.Format = symbole & " #,00;-" & symbole & " #,00"
End Sub

Que dois faire maintenant pour pouvoir avoir aussi les formats un peu
spéciaux aussi dans mes formulaires ?



Bonsoir,

Utilise le code suivant dans l'évènement 'Sur ouverture' de ton
formulaire:
A chaque ouverture il va lire le symbole monétaire en cours et l'utilise
pour définir le format de ton contrôle.
Si tu as plusieurs contrôles monétaires, il faut bien sûr répéter la
ligne.
Par contre, si tu veux que l'utilisateur puisse choisir une monnaie
différente de celle des options régionales, c'est un autre problème.

Dim symbole As String
symbole = SymboleMonetaireRegional
Me.LeNomDeTonControleMonétaire.Format = symbole & " #,00;-" & symbole & "
#,00"

Gilbert

"jfd" a écrit dans le message de
news:
Précision importante
Après test et retest pas de problème pour les nombres exemple :
Langue anglaise les( . et , ) OK retour en français changement
effectués
sans problème
Par contre le symbole monétaire ne change que si je mets sur monétaire
et
se

calle de lui-même sur le format de la langue choisie
(£#,##0.00;"-£"#,##0.00)mais ensuite refuse de changer à nouveau..
Il semble y avoir un blocage juste sur le symbole monétaire.
Merci



Access 2003
Je cherche à pouvoir changer les formats de certains champs,
monétaires
ou


autres (champs g qui pourrait devenir kg) et à en modifier
l'extension
avec


une ou plusieurs listes de choix ou juste un ou des champs définis
dans
ma


base de données mais je bloque.

Je voudrais donc sélectionner certain champs et leur imposer mon
format
sur


demande, et cela étant modifiable à l'ouverture de ma base par
exemple.

J'avais posée une question presque similaire sur les formats
monétaire
mais


je n'ai pas réussi à mettre en application le code de façon correcte
(désolé


Gilbert et merci encore, j'ai bien réussi à récupérer les paramètres
régionaux mais pas à les changer avec un code)
Débutant pour tout ce qui est codes et déclarations.
Alors si quelqu'un peu m'aider et essayer de m'expliquer, I will be
really


happy.
Merci par avance



















Avatar
Gilbert
Bonjour,

Je pensais comme toi que Access utilisait le symbole monétaire défini dans
les options régionales.
En fait ce n'est pas le cas. Voir ce post
http://groups.google.com/group/microsoft.public.fr.access/browse_thread/thread/e487a2045c794dcd/0594001600ab1523?q=symbole+monetaire&rnum#0594001600ab1523

Pour ce qui est des symboles spéciaux, n'y a t'il pas un problème de police
de caractères?
--
Gilbert


"jfd" a écrit dans le message de news:

La formule est super mais comment faire pour que mes champs passent
directement sur le format local comme dans Excel selon le symbole régional
Windows, je pense que cela faisait parti de vos premiers messages mais je
n'arrive pas à l'adapter correctement et j'en suis bien confus. Le module
semble Ok mais comment le relier à mes champs?
Ou est qu'il vaut mieux rester à vos derniers conseils?
Merci bbbbbbbbbbbbbbbbbeaucoup.



Voila en quoi, ils sont spéciaux et ils ne s'affichent pas correctement
au
niveau des points ou virgules et pas de symbole dans mes formulaires et
états.

?123,456,789 COREE

¥123,456,789 JAPON

S/. 123,456,789.00 PEROU

123.456.789,00 kr. ISLANDE

Merci de votre aide.



Bonjour,

Quels sont ces formats et qu'ont-ils de spéciaux?
J'avoue ne jamais avoir utilisé de yen ou de monnaie coréenne dont je
ne
connais même pas le nom.

--
Gilbert


"jfd" a écrit dans le message de news:

Bonjour et encore un grand merci
Un grand pas en avant mais pas encore avec tous les formats
monétaires
Blocage par exemple sur le Coréen, Japonais et d'autres qui ont des
formats
plus complexes
Voila ou j'en suis :

Module 4
Option Compare Database

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" ()
Private Const LOCALE_SCURRENCY = &H14 'Symbole monétaire local. Ex :
?
Private Const LOCALE_SINTLSYMBOL = &H15 'Symbole monétaire intl
(international???). Ex : FRF
Private Const LOCALE_SMONDECIMALSEP = &H16 ' Séparateur décimal
monétaire
Private Const LOCALE_SMONTHOUSANDSEP = &H17 ' Séparateur de millier
monétaire
Private Const LOCALE_ICURRDIGITS = &H19 ' Précision décimale
monétaire
' (nombre de chiffre après la
virgule)



Public Function SymboleMonetaireRegional() As String
Dim Symbol As String
Dim iRet1 As Long
Dim iRet2 As Long
Dim lpLCDataVar As String
Dim pos As Integer
Dim LOCALE As Long

LOCALE = GetUserDefaultLCID()
iRet1 = GetLocaleInfo(LOCALE, LOCALE_SCURRENCY, lpLCDataVar, 0)

Symbol = String$(iRet1, 0)
iRet2 = GetLocaleInfo(LOCALE, LOCALE_SCURRENCY, Symbol, iRet1)
pos = InStr(Symbol, Chr$(0))
If pos > 0 Then
Symbol = Left$(Symbol, pos - 1)
SymboleMonetaireRegional = Symbol
End If
End Function

Et sur ouverture de mes formulaires le code que tu m'envoyé aussi

Private Sub Form_Open(Cancel As Integer)
Dim symbole As String
symbole = SymboleMonetaireRegional
Me.Texte369.Format = symbole & " #,00;-" & symbole & " #,00"
Me.Texte377.Format = symbole & " #,00;-" & symbole & " #,00"
Me.Texte375.Format = symbole & " #,00;-" & symbole & " #,00"
End Sub

Que dois faire maintenant pour pouvoir avoir aussi les formats un peu
spéciaux aussi dans mes formulaires ?



Bonsoir,

Utilise le code suivant dans l'évènement 'Sur ouverture' de ton
formulaire:
A chaque ouverture il va lire le symbole monétaire en cours et
l'utilise
pour définir le format de ton contrôle.
Si tu as plusieurs contrôles monétaires, il faut bien sûr répéter la
ligne.
Par contre, si tu veux que l'utilisateur puisse choisir une monnaie
différente de celle des options régionales, c'est un autre problème.

Dim symbole As String
symbole = SymboleMonetaireRegional
Me.LeNomDeTonControleMonétaire.Format = symbole & " #,00;-" &
symbole & "
#,00"

Gilbert

"jfd" a écrit dans le message de
news:
Précision importante
Après test et retest pas de problème pour les nombres exemple :
Langue anglaise les( . et , ) OK retour en français changement
effectués
sans problème
Par contre le symbole monétaire ne change que si je mets sur
monétaire
et
se

calle de lui-même sur le format de la langue choisie
(£#,##0.00;"-£"#,##0.00)mais ensuite refuse de changer à nouveau..
Il semble y avoir un blocage juste sur le symbole monétaire.
Merci



Access 2003
Je cherche à pouvoir changer les formats de certains champs,
monétaires
ou


autres (champs g qui pourrait devenir kg) et à en modifier
l'extension
avec


une ou plusieurs listes de choix ou juste un ou des champs
définis
dans
ma


base de données mais je bloque.

Je voudrais donc sélectionner certain champs et leur imposer mon
format
sur


demande, et cela étant modifiable à l'ouverture de ma base par
exemple.

J'avais posée une question presque similaire sur les formats
monétaire
mais


je n'ai pas réussi à mettre en application le code de façon
correcte
(désolé


Gilbert et merci encore, j'ai bien réussi à récupérer les
paramètres
régionaux mais pas à les changer avec un code)
Débutant pour tout ce qui est codes et déclarations.
Alors si quelqu'un peu m'aider et essayer de m'expliquer, I
will be
really


happy.
Merci par avance





















Avatar
jfd
Re bonjour et re merci
Non pas de problème de police, j’en suis sur car dans mes différents essais
j'ai réussi à avoir ces symboles monétaire, mais ils étaient ensuite inscris
en fixe dans mon formulaire et c’était cela mon gros soucis.
Et pour les traductions dans mes tables j'utilise ces langues.
Alors, je colle!!
Jean-François


Bonjour,

Je pensais comme toi que Access utilisait le symbole monétaire défini dans
les options régionales.
En fait ce n'est pas le cas. Voir ce post
http://groups.google.com/group/microsoft.public.fr.access/browse_thread/thread/e487a2045c794dcd/0594001600ab1523?q=symbole+monetaire&rnum#0594001600ab1523

Pour ce qui est des symboles spéciaux, n'y a t'il pas un problème de police
de caractères?
--
Gilbert


"jfd" a écrit dans le message de news:

La formule est super mais comment faire pour que mes champs passent
directement sur le format local comme dans Excel selon le symbole régional
Windows, je pense que cela faisait parti de vos premiers messages mais je
n'arrive pas à l'adapter correctement et j'en suis bien confus. Le module
semble Ok mais comment le relier à mes champs?
Ou est qu'il vaut mieux rester à vos derniers conseils?
Merci bbbbbbbbbbbbbbbbbeaucoup.



Voila en quoi, ils sont spéciaux et ils ne s'affichent pas correctement
au
niveau des points ou virgules et pas de symbole dans mes formulaires et
états.

?123,456,789 COREE

¥123,456,789 JAPON

S/. 123,456,789.00 PEROU

123.456.789,00 kr. ISLANDE

Merci de votre aide.



Bonjour,

Quels sont ces formats et qu'ont-ils de spéciaux?
J'avoue ne jamais avoir utilisé de yen ou de monnaie coréenne dont je
ne
connais même pas le nom.

--
Gilbert


"jfd" a écrit dans le message de news:

Bonjour et encore un grand merci
Un grand pas en avant mais pas encore avec tous les formats
monétaires
Blocage par exemple sur le Coréen, Japonais et d'autres qui ont des
formats
plus complexes
Voila ou j'en suis :

Module 4
Option Compare Database

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" ()
Private Const LOCALE_SCURRENCY = &H14 'Symbole monétaire local. Ex :
?
Private Const LOCALE_SINTLSYMBOL = &H15 'Symbole monétaire intl
(international???). Ex : FRF
Private Const LOCALE_SMONDECIMALSEP = &H16 ' Séparateur décimal
monétaire
Private Const LOCALE_SMONTHOUSANDSEP = &H17 ' Séparateur de millier
monétaire
Private Const LOCALE_ICURRDIGITS = &H19 ' Précision décimale
monétaire
' (nombre de chiffre après la
virgule)



Public Function SymboleMonetaireRegional() As String
Dim Symbol As String
Dim iRet1 As Long
Dim iRet2 As Long
Dim lpLCDataVar As String
Dim pos As Integer
Dim LOCALE As Long

LOCALE = GetUserDefaultLCID()
iRet1 = GetLocaleInfo(LOCALE, LOCALE_SCURRENCY, lpLCDataVar, 0)

Symbol = String$(iRet1, 0)
iRet2 = GetLocaleInfo(LOCALE, LOCALE_SCURRENCY, Symbol, iRet1)
pos = InStr(Symbol, Chr$(0))
If pos > 0 Then
Symbol = Left$(Symbol, pos - 1)
SymboleMonetaireRegional = Symbol
End If
End Function

Et sur ouverture de mes formulaires le code que tu m'envoyé aussi

Private Sub Form_Open(Cancel As Integer)
Dim symbole As String
symbole = SymboleMonetaireRegional
Me.Texte369.Format = symbole & " #,00;-" & symbole & " #,00"
Me.Texte377.Format = symbole & " #,00;-" & symbole & " #,00"
Me.Texte375.Format = symbole & " #,00;-" & symbole & " #,00"
End Sub

Que dois faire maintenant pour pouvoir avoir aussi les formats un peu
spéciaux aussi dans mes formulaires ?



Bonsoir,

Utilise le code suivant dans l'évènement 'Sur ouverture' de ton
formulaire:
A chaque ouverture il va lire le symbole monétaire en cours et
l'utilise
pour définir le format de ton contrôle.
Si tu as plusieurs contrôles monétaires, il faut bien sûr répéter la
ligne.
Par contre, si tu veux que l'utilisateur puisse choisir une monnaie
différente de celle des options régionales, c'est un autre problème.

Dim symbole As String
symbole = SymboleMonetaireRegional
Me.LeNomDeTonControleMonétaire.Format = symbole & " #,00;-" &
symbole & "
#,00"

Gilbert

"jfd" a écrit dans le message de
news:
Précision importante
Après test et retest pas de problème pour les nombres exemple :
Langue anglaise les( . et , ) OK retour en français changement
effectués
sans problème
Par contre le symbole monétaire ne change que si je mets sur
monétaire
et
se

calle de lui-même sur le format de la langue choisie
(£#,##0.00;"-£"#,##0.00)mais ensuite refuse de changer à nouveau..
Il semble y avoir un blocage juste sur le symbole monétaire.
Merci



Access 2003
Je cherche à pouvoir changer les formats de certains champs,
monétaires
ou


autres (champs g qui pourrait devenir kg) et à en modifier
l'extension
avec


une ou plusieurs listes de choix ou juste un ou des champs
définis
dans
ma


base de données mais je bloque.

Je voudrais donc sélectionner certain champs et leur imposer mon
format
sur


demande, et cela étant modifiable à l'ouverture de ma base par
exemple.

J'avais posée une question presque similaire sur les formats
monétaire
mais


je n'ai pas réussi à mettre en application le code de façon
correcte
(désolé


Gilbert et merci encore, j'ai bien réussi à récupérer les
paramètres
régionaux mais pas à les changer avec un code)
Débutant pour tout ce qui est codes et déclarations.
Alors si quelqu'un peu m'aider et essayer de m'expliquer, I
will be
really


happy.
Merci par avance