Remplacer caractère dans Textbox

  • Initiateur de la discussion spoter
  • Date de début
S

spoter

Guest
bonjour à tous,

Dans une textbox qui compte 6 caractères, je cherche à remplacer un caractère (par exemple 'a'), qui est situé en 2ème position, par un autre (par exemple 'b').

comment dois-je faire.

merci d'avance

spoter
 
S

spoter

Guest
le code ne marche pas, ça me met :

' argument ou appel de procédure incorrect '

il s'agit d'un nombre dans ma textbox : ' 1,2345 '
(nombre entré grâce à une formule)

je veux remplacer la virgule par le point: ' 1.2345 '

comment faut-il faire??
 

Bernard_XLD

XLDnaute Barbatruc
Membre du Staff
re bonjour

Ce code fonctionne parfaitement, y compris pour les virgules.
Ta textbox s'appelle bien textbox1?
comment l'utilise tu ? dans une procédure externe ou dans le userform? si c'est dans une procédure externe, ajoute le nom du userform avant (pour tous les textbox) sous la forme Userform1.TextBox1.value. Si c'est interne, tu peux utiliser Me.TextBox1.value.
Sinon mets un exemple.

A+
 
S

spoter

Guest
je l'utilise dans un userform

voilà mon exemple :

je rentre 2 valeurs numériques, ave décimale (le point au lieu de la virgule) dans 2 textbox :

'textbox1 = 1.2345
'textbox2 = 1.4567

la textbox3 donne l'addition des 2 premières textbox :

userform1.textbox3 = val(userform1.textbox1) + val(userform1.textbox2)

j'obtiens comme résultat : ' 2,6912 '

or je souhaite avoir un point au lieu de la virgule car je veux faire d'autres opérations avec le résultat obtenu.

si je mets le code que tu m'as donné :
if Mid(userform1.textbox3.value,2,1) = ',' then
userform1.textbox3.value = left(userform1.textbox3.value,1) & '.' & right(userform1.textbox3.value,-4)
end if

cela me mets : 'argument ou appel de procédure incorrect '

comment faire ??
 

Bernard_XLD

XLDnaute Barbatruc
Membre du Staff
Re

relis bien ton code et le mien, tu verras dans le tien un -4 au lieu de
Len(TextBox1.Value) - 2 qui devrait donner dans ton code
userform1.textbox3.value = left(userform1.textbox3.value,1) & '.' &
right(userform1.textbox3.value,Len(TextBox3.Value) - 2)

mais de toute façon, il y a mieux pour faire ce que tu veux

remplace
userform1.textbox3 = val(userform1.textbox1) + val(userform1.textbox2)

par
Me.TextBox3.Value = Replace(Val(Me.TextBox1.Value) + Val(Me.TextBox2.Value), ',', '.')

Cordialement, A+
 
S

spoter

Guest
oui ça doit marcher mais j'ai trouvé autrement :

userform1.textbox3.value = val(userform1.textbox1.value) + userform1.textbox2.value)

userform1.textbox3.value = format(userform1.textbox3.value, '0.0000')

userform1.textbox3.value = replace(userform1.textbox3.value, ',', '.')

merci

a+
 

Discussions similaires

Statistiques des forums

Discussions
313 058
Messages
2 094 879
Membres
106 114
dernier inscrit
Jeremy AUGUSTO