Récup d'un nombre décimal sans le point

[Résolu]
Signaler
Messages postés
2
Date d'inscription
mercredi 30 août 2006
Statut
Membre
Dernière intervention
30 août 2006
-
Messages postés
2
Date d'inscription
mercredi 30 août 2006
Statut
Membre
Dernière intervention
30 août 2006
-
Bonjour,

Je récupére les données venant d'un fichier csv et j'ai un problème en ce qui concerne la récupération de chiffres avec décimal séparés par un point. Exemple : 95.55
Les chiffres que je récupére ne contiennent plus les points. Exemple : 9555.
<!-- BEGIN TEMPLATE: bbcode_code -->

Code:

objConnection.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & strPathtoTextFile & ";" & _
"Extended Properties=""text;HDR=NO;FMT=Delimited"""

objRecordSet.Open "SELECT * FROM " & CommonDialog1.FileTitle & "", _
objConnection, adOpenStatic, adLockOptimistic, adCmdText

Set cnx = New ADODB.Connection

'Définition du pilote de connexion
cnx.Provider = "Microsoft.Jet.OLEDB.4.0"
'Définition de la chaîne de connexion
cnx.ConnectionString = "C:\DB1.mdb"
'Ouverture de la base de données
cnx.Open

Do Until objRecordSet.EOF
TmpSqlInsertShareData = "INSERT INTO SHARE_DATA (ENTITY_ID, RELATED_ID, PERCENTAGE) VALUES (" & objRecordSet.Fields.Item(8) & ", " & objRecordSet.Fields.Item(9) & ", " & objRecordSet.Fields.Item(10) & ");"
cnx.Execute (TmpSqlInsertShareData)
objRecordSet.MoveNext
Loop

cnx.Close

Cette donnée est PERCENTAGE en base de données et la valeur est contenue dans objRecordSet.Fields.Item(10).

Merci d'avance pour votre aide.


<!-- / message -->

3 réponses

Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
46
salut,

en prenant compte de ce %age

Private Sub Process() 
    objConnection.Open "Provider= Microsoft.Jet.OLEDB.4.0;" & _ 
                        "Data Source=" & strPathtoTextFile & ";" & _ 
                        "Extended Properties=""text;HDR=NO;FMT=Delimited""" 

    objRecordSet.Open "SELECT * FROM " & CommonDialog1.FileTitle & "", _ 
                      objConnection, adOpenStatic, adLockOptimistic, adCmdText 

    Set cnx = New ADODB.Connection 

    'Définition du pilote de connexion
    cnx.Provider = "Microsoft.Jet.OLEDB.4.0" 

    'Définition de la chaîne de connexion
    cnx.ConnectionString = "C:\DB1.mdb" 

    'Ouverture de la base de données
    cnx.Open 
    Do Until objRecordSet.EOF 
        TmpSqlInsertShareData = "INSERT INTO SHARE_DATA (ENTITY_ID,  RELATED_ID, PERCENTAGE) VALUES (" _
                                & objRecordSet.Fields.Item(8) & ", " & objRecordSet.Fields.Item(9) & ", " & _
                                objRecordSet.Fields.Item(10)  / 100  & ");" 
        cnx.Execute (TmpSqlInsertShareData) 
        objRecordSet.MoveNext 
    Loop 
    cnx.Close 
End Sub

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

++
PCPT   [AFCK]

<hr size ="2" width="100%" />Prenez un instant pour répondre à ce sondage svp
Messages postés
1854
Date d'inscription
jeudi 23 mai 2002
Statut
Membre
Dernière intervention
24 juin 2018
26
 Bonjour,

A tout hasard.

Replace(objRecordSet.Fields.Item(10),".",",")

jean-marc
Messages postés
2
Date d'inscription
mercredi 30 août 2006
Statut
Membre
Dernière intervention
30 août 2006

Merci beaucoup avec la division par 100 ça marche impec.

Bien vu, je n'y avais pas penser.