Insertion d'un caractère dans une chaine de caractère

Résolu
cs_jordinette Messages postés 134 Date d'inscription mercredi 2 mars 2005 Statut Membre Dernière intervention 5 avril 2007 - 21 nov. 2005 à 12:01
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 - 21 nov. 2005 à 12:44
Bonjour je souhaiterais insérer une "," dans une chaine de caratère à une position précise.
exemple:
Cumul as double 'contient une donné genre 3900
et je voudrais insérer la "," en 2ème position en partant de la droite
donnant le résultat suivant 39,00
Merci d'avance
jordinette

4 réponses

AnteManoclis Messages postés 154 Date d'inscription jeudi 22 mai 2003 Statut Membre Dernière intervention 6 septembre 2007
21 nov. 2005 à 12:10
Salut,



Si tu fais Cumul / 100 ça te conviens pas ?


Tchô
AnteManoclis
3
perathoner Messages postés 90 Date d'inscription dimanche 5 novembre 2000 Statut Membre Dernière intervention 26 juillet 2006
21 nov. 2005 à 12:22
Salut,

Dim MaChaine As String 'Ta Chaine (ex : 3900)
Dim MaPosition As Integer 'La position à laquelle tu veux insérer ton caractère (ex : 2)
Dim MonCaractère As String 'Le caractère (ex : ,)

MaChaine = "3900"
MaPosition = 2
MonCaractère = ","


MaChaine = Mid$(MaChaine, 1, MaPosition-1) & MonCaractère & Mid$(MaChaine, MaPosition)
3
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
21 nov. 2005 à 12:43
salut,


Option Explicit

Private Sub Form_Load()
Const Cumul As Double = 3900
Const Separ As String = "," 'un "." peut être nécessaire pour Val

Dim sResultat1 As String
Dim sResultat2 As String

' 1ère méthode. on prend le reste sur 100
Dim lReste As Long, sReste As String
lReste = Cumul Mod 100
If lReste < 10 Then
sReste = "0" & CStr (lReste)
Else
sReste = CStr(lReste)
End If

sResultat1 = CStr (Int(Cumul / 100)) & Separ & sReste
MsgBox sResultat1

' 2ème méthode. par position
Dim sLeft As String, sRight As String
sRight = Right$(CStr(Cumul), 2)
sLeft = Left$( CStr (Cumul), Len(CStr(Cumul)) - 2)

sResultat2 = sLeft & Separ & sRight
MsgBox sResultat2

Unload Me
End Sub



<SMALL> Coloration syntaxique automatique [AFCK]</SMALL>


PCPT [AFCK]
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
21 nov. 2005 à 12:44
arf, satané refresh....
sinon, juste un "/100" enlèverait le ",00" en cas d'entier.
0
Rejoignez-nous