OVH Cloud OVH Cloud

Fonction transformant une valeur en texte ***10 250,50

31 réponses
Avatar
Jean-Paul V
Bonjour

J'ai écri cette fonction :
="***"&CTXT(+AV407;2;VRAI)
malheureusement j'obtiens ***10250,50
et je voudrais obtenir ***10 250,50
comment la modifier ?

Merci encore pour votre aide

1 réponse

1 2 3 4
Avatar
sabatier
puis-je apporter ma modeste contribution à cet échange en ajoutant que la
grille de John Walkenbach (dataform.xla, si je ne me souviens bien) a été
conçue de telle sorte que l'utilisation du pavé numérique donne bien une
virgule et non un point comme dans la grille (formulaire) native d'excel...
jps

"GD" a écrit dans le message de
news:%
Bonsour ® Bob,
selon que l'on veuille que la grille de saisie ou "formulaire"
reconnaisse les paramétrages Locaux FR ou bien US
cela dépend de son mode d'appel ....

via le menu> données> Formulaire
dans une feuille EXCEL active se sont les paramétres locaux qui sont
activés

ce qui est normal ;-)))

via VBA
ActiveSheet.ShowDataForm
se sont les paramétres US qui sont activés....

mais , mais ....
si l'on active la grille via Send key en utilisant les raccourcis clavier
se sont les paramétres locaux qui sont activés !!!!!

pour s'en convaicre ...
Sub Macro2()
With Sheets("feuil1")
[A1] = "nombre décimal"
[B1] = "date"
[C1] = "heure"
[A2] = 38786.12345
[B2] = Date
[C2] = "13:45"
End With
[A2].Select
MsgBox "via appel formulaire"
ActiveSheet.ShowDataForm
MsgBox "via send keys"
SendKeys "%Do"
'--------- avant Excel 2000 utiliser SendKeys "%DG"
End Sub

cette methode que j'ai déja plusieurs fois mentionné ici , m'avait été
signalée par LL ;o)))


@+




Herdet wrote:
Bonsoir Jean-Paul,
Je pense qu'il faut remettre le pb dans son contexte :
- Dans ma société le pb de saisie qui a été résolu concerne
uniquement Visual Basic par une interception de la saisie
Il ne concerne pas Excel ni VBA
- A ma connaissance, la grille de saisie n'est quasiment pas connue
des utilisateurs et je n'ai pas reçu de questions à ce sujet
- Sur mon portable perso avec Excel 2002, la grille nommée
"Formulaire" reconnait bien la virgule
Je verrai mardi si ce pb existe avec un clavier standard sur
Office 2000

- La saisie dans les cellules avec le clavier numérique et les
paramètres FR ne pose pas de pb particulier
- En VBA on doit pouvoir s'en sortir en :
- Utilisant les fonctions adéquates de formatage
- Interceptant la touche "Entrer" de la saisie puis en
remplaçant la virgule obtenue par un point ou inversement
en testant le séparateur utilisé à l'aide de
"Application.International(xlDecimalSeparator)"
- Testant le code des paramètres régionaux :
if Application.International (2) = X then Replace,
etc...... avec :
X = 1 pour Paramètres régionaux Anglais (Etats-Unis)
X = 44 pour Paramètres régionaux Anglais (Royaume Uni)
X = 2 pour Paramètres régionaux Anglais (Canada)
X = 32 pour Paramètres régionaux Français (Belgique)
X = 33 pour Paramètres régionaux Français (France)
X = 33 pour Paramètres régionaux Français (Canada)

Tous ces problèmes de communication sont pénibles à solutionner et
font parfois perdre beaucoup de temps.

J'espère t'avoir donné plusieurs pistes d'exploration

Cordiales salutations
Robert Dezan

"Jean-Paul V" a écrit dans le
message de news:
Bonjour Robert

Je crois comprendre que dans votre société on a résolu le problème
de la virgule.Est-ce que ce problème est résolu lorsque vous faites
Données Grille.Chez moi lorsque je tape un montant dans Données
Grille le point du clavier numérique n'est pas pris comme une
virgule alors que lors que je saisis dans Données Grille j'ai bien
la vigule .Y-a-t-il une solution à ce problème.

"Herdet" wrote:

Bonsoir Isabelle
Désolé, mais le sujet porte sur Excel (FR) et VBA, pas sur Visual
Basic ce qui est complêtement différent.
Au passage pour parler de VB, les développeurs en VB de ma société
ont contourné ce problème de saisie et affichage avec virgule
depuis pas mal d'années et les utilisateurs emploient le clavier
azerty et les paramètres Français par défaut.
A suivre... peut être
Robert

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


alors où est le problème ?


visual basic ;-)

isabelle













1 2 3 4