pb formulaire consultation-modification

Le
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
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
michdenis
Le #22179391
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




"" 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
Bruno RCSC
Le #22182961
Merci MichDenis pour ce cours très utile.

BH
Publicité
Poster une réponse
Anonyme