Se connecter avec
S'enregistrer | Connectez-vous

Importer fichier txt - Pb avec la fonction Split

Dernière réponse : dans Programmation

Bonjour,

J'ai un petit soucis, en fait j'ai un fichier texte ayant le format ci-dessous:
Type: Repartition
0, 0
7.2e-008, 0.0005172
1.44e-007, 0.0048998
2.16e-007, 0.022621
2.88e-007, 0.082317
3.6e-007, 0.1872
4.32e-007, 0.35252
5.04e-007, 0.51745
5.76e-007, 0.66523
6.48e-007, 0.76361

Et j'essaie de créer une macro qui le lit et mette les éléments de chaque coté du séparateur "," dans une colonne (dans mon cas dans A et B).

Le code est ci-dessous et quand je l'execute, il semblerait que le problème se trouve à ligne en gras et je ne sais pas comment le résoudre.

Voici l'erreur qui est renvoyé
Erreur d'execution '9':
L'indice n'appartient pas à la séléction


  1. Private Sub CommandButton1_Click()
  2. 'macro pour importer le fichier texte dans la Feuil2
  3. Dim Nom_Fichier As String, Texte As Variant
  4. Dim NumFile As Integer, Compteur As Integer
  5.  
  6. If Feuil1.TextBox1.Value = "" Then
  7. MsgBox "Merci de renseigner le nom de fichier !", vbCritical + vbOKOnly, "Attention..."
  8. Exit Sub
  9. End If
  10.  
  11. Nom_Fichier1 = "C:\Traitement Vba\" & Feuil1.TextBox1.Value
  12. Compteur = 1
  13. If Dir(Nom_Fichier1) = "" Then
  14. MsgBox "Le fichier n'existe pas !", vbCritical + vbOKOnly, "Attention..."
  15. Exit Sub
  16. Else
  17. Feuil2.Select
  18. NumFile = FreeFile
  19. Open Nom_Fichier1 For Input As NumFile ' ouverture du fichier
  20. Do While Not EOF(NumFile)
  21. Line Input #NumFile, Texte
  22. montableau2D = Split(Texte, ", ")
  23. Feuil2.Range("A" & Compteur).Select
  24. Feuil2.Range("A" & Compteur).Value = montableau2D(0)
  25. Feuil2.Range("B" & Compteur).Value = montableau2D(1)
  26. Compteur = Compteur + 1
  27. Loop
  28. End If
  29. Feuil2.Range("A1").Select
  30. Close NumFile
  31.  
  32. End Sub


Je vous Remercie d'avance
Lassé par la pub ? Créez un compte
Lassé par la pub ? Créez un compte