|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Membre régulier
![]() Guillaume Inscription : décembre 2007 Messages : 161 ![]() |
Bonjour !
Dans une application, je souhaite permettre à l'utilisateur de modifier les valeurs par défaut de 2 champs du formulaire "Analyse Std". Je précise que ces valeurs sont des réels doubles affichés au format pourcentage. J'ai donc prévu un petit formulaire "Paramétrages" qui : 1- rapatrie les valeurs dans 2 champs indépendants à l'ouverture Code :
3- enregistre les valeurs saisies comme nouvelles valeurs par défaut dans le formulaire "Analyse Std" Code :
Le problème c'est qu'après cette procédure, le formulaire "Analyse Std" m'affiche #Nom ? dans les champs concernés. Pourtant lorsque je vais consulter en mode édition les valeurs par défaut des champs, les données ont bien été reprises... et si je resaisis exactement les mêmes infos, les champs s'affichent à nouveau correctement... ![]() Je mets une base exemple en pièce jointe pour être plus clair... |
||||
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Nicolas GuimbalConsultant/développeur ERP Inscription : mai 2008 Messages : 1 255 ![]() |
Bonsoir,
Je suis interloqué devant le replace(...,".",",") Je pense que 2 numériques dans access sont dans le même standard régional ! J'écrirais donc plus simplement : Code :
Param_EcartA = Forms("Analyse Std").EcartA.DefaultValue |
|
|
00
|
|
|
#3 | |
|
Membre régulier
![]() Guillaume Inscription : décembre 2007 Messages : 161 ![]() |
Citation:
-------------- Pour revenir au problème : c'est bien le Forms("Analyse Std").EcartA.DefaultValue = Me.Param_EcartA.Value qu'il faut modifier. Quand on sollicite l'aide d'Access au sujet de la propriété Valeur par défaut d'un champ on lit : "Propriété DefaultValue : Spécifie une valeur String saisie automatiquement dans un champ[...]" Ce ne serait cette histoire de String qui pose problème ? |
|
|
|
00
|
|
|
#4 |
|
Membre régulier
![]() Guillaume Inscription : décembre 2007 Messages : 161 ![]() |
Ce que je ne comprends pas c'est que si j'essaie d'afficher la valeur par défaut de l'un des champs de Analyse Std, il me renvoie une valeur avec un point à la place de la virgule ???
Code :
MsgBox Forms("Analyse Std").EcartA.DefaultValue |
|
|
00
|
|
|
#5 |
|
Membre régulier
![]() Guillaume Inscription : décembre 2007 Messages : 161 ![]() |
J'ai finalement réussi à obtenir le fonctionnement désiré !
Comme je n'arrivais pas à faire comprendre à Access que je plaçais une valeur numérique dans la propriété DefaultValue des champs de Analyse Std, j'ai remplacé le contenu par "=CDbl('mavaleur')" Du coup j'ai également dû construire une formule "capilotractée" Voici les lignes principales : Code :
Forms("Analyse Std").EcartA.DefaultValue = "=CDbl('" & Me.Param_EcartA.Value & "')" Code :
Me.Param_EcartA.Value = CDbl(Mid(Forms("Analyse Std").EcartA.DefaultValue, InStr(1, Forms("Analyse Std").EcartA.DefaultValue, "'", vbTextCompare) + 1, InStr(InStr(1, Forms("Analyse Std").EcartA.DefaultValue, "'", vbTextCompare) + 1, Forms("Analyse Std").EcartA.DefaultValue, "'", vbTextCompare) - InStr(1, Forms("Analyse Std").EcartA.DefaultValue, "'", vbTextCompare) - 1)) |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com