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

pb formulaire consultation-modification

2 réponses
Avatar
ats.ccs
Bonjour,
Sous excel 2002

Dans un formulaire pour consulter et modifier une base, j'utilise
Private Sub ChoixImmat_Click()
Me.tpl_km_contrat = Sheets("COMPLET").Cells(ligne, 43)
Me.tpl_km_contrat = Format(Me.tpl_km_contrat, "# ##0"" km")
ce qui permet l'affichage du chiffre avec le format.
Pour valider une modification, je voudrais utiliser
Private Sub Validation_Click()
Cells(ligne, 43) = CDbl(Me.tpl_km_contrat)
Mon problème : Excel se plante, il ne veut pas de CDbl.
Et si je ne le mets pas, dans la base, j'obtiens le bon chiffre mais mes
calculs ne se font pas (c'est comme si je saisissais du texte).
En espérant avoir été clair, comment dois je procéder ? Peut on à la fois
afficher un format personnalisé dans le formulaire et valider une
modification de la base avec ce chiffre ?

Merci pour votre aide.
BH

2 réponses

Avatar
michdenis
Bonjour,

| Cells(ligne, 43) = CDbl(Me.tpl_km_contrat)

Cdbl() est une fonction de conversion d'Excel. Pour fonctionner,
la donnée traitée doit utiliser le même séparateur décimale que
celui définit dans le panneau de configuration de Windows.
Ceci signifie que si dans ton panneau de configuration, tu as la
virgule comme séparateur de nombre, le nombre traité par Cdbl()
doit avoir aussi la virgule comme séparateur décimale.

Tu peux employer la fonction "Substitute" pour remplacer le point
par la virgule.

Exemple :

Dim T As String
T = CDbl(Me.tpl_km_contrat)

if t <>"" then
'Tu dois enlever les caractères alphanumériques (format)
T = Application.Substitute(T, " km", ""))

'Tu passes la valeur "Texte" du textbox en valeur numérique
x = CDbl(Application.Substitute(T, ".", ","))
end if




"" a écrit
dans le message de groupe de discussion :

Bonjour,
Sous excel 2002

Dans un formulaire pour consulter et modifier une base, j'utilise
Private Sub ChoixImmat_Click()
Me.tpl_km_contrat = Sheets("COMPLET").Cells(ligne, 43)
Me.tpl_km_contrat = Format(Me.tpl_km_contrat, "# ##0"" km")
ce qui permet l'affichage du chiffre avec le format.
Pour valider une modification, je voudrais utiliser
Private Sub Validation_Click()
Cells(ligne, 43) = CDbl(Me.tpl_km_contrat)
Mon problème : Excel se plante, il ne veut pas de CDbl.
Et si je ne le mets pas, dans la base, j'obtiens le bon chiffre mais mes
calculs ne se font pas (c'est comme si je saisissais du texte).
En espérant avoir été clair, comment dois je procéder ? Peut on à la fois
afficher un format personnalisé dans le formulaire et valider une
modification de la base avec ce chiffre ?

Merci pour votre aide.
BH
Avatar
Bruno RCSC
Merci MichDenis pour ce cours très utile.

BH