Bonjour,
J'ai besoin de votre aide car je rencontre un problème pour remplir une listbox. Il faudrait que celle-ci puisse contenir des décimaux (les données que j'y importent sont décimales et j'aimerais conserver ce format ; càd éviter de multiplier par 1000 pour avoir des entiers).
J'arrive à insérer des points sous la forme "12.054" mais il faudrait "12,054" car par la suite j'utilise les valeurs de la listbox dans différents calculs.
Mon code est le suivant :
Si je suis obligé de séparer les données par un " " et supprimer la inputbox ça ne me dérange pas.Code:CommonDialog1.ShowOpen If CommonDialog1.FileName = "" Then MsgBox "Vous n'avez rien sélectionné": Exit Sub Open CommonDialog1.FileName For Input As #1 Dim ligne As String Dim i As Integer Dim w As String Dim valeurs As Variant Dim sd As Variant Input #1, ligne w = InputBox("Quel est le séparateur des cordonnées ?" & VBA.Chr(13) & VBA.Chr(10) & "1ère coordonnées trouvées dans votre fichier : " & VBA.Chr(10) & ligne) valeurs = Split(ligne, w) 'on sépare selon le séparateur entré plus haut Liste.Lstb_pts.AddItem (valeurs(0)) Liste.Lstb_pts.List(Liste.Lstb_pts.ListCount - 1, 1) = valeurs(1) Liste.Lstb_pts.List(Liste.Lstb_pts.ListCount - 1, 2) = valeurs(2) Liste.Lstb_pts.List(Liste.Lstb_pts.ListCount - 1, 3) = valeurs(3) While Not EOF(1) Input #1, ligne valeurs = Split(ligne, w) Liste.Lstb_pts.AddItem (valeurs(0)) Liste.Lstb_pts.List(Liste.Lstb_pts.ListCount - 1, 1) = valeurs(1) Liste.Lstb_pts.List(Liste.Lstb_pts.ListCount - 1, 2) = valeurs(2) Liste.Lstb_pts.List(Liste.Lstb_pts.ListCount - 1, 3) = valeurs(3) Wend Close #1
Il me semble que le problème est que dès qu'il rencontre une virgule le programme croit qu'il faut aller à la ligne.
J'espère que c'est possible est que vous allez pouvoir m'aider !
Merci par avance.
-----