Import fichier txt point dans Excel - convertir virgule

Bonjour,

Je sollicite votre précieuse aide sur un sujet qui je sais a déjà été abordé et résolu, mais je ne parviens pas à l'appliquer dans mon cas.

J'ai un tableau excel qui fait appel à un fichier txt qui lui a nombres séparés par des points. Pour exploiter mon fichier excel je dois convertir ces points en virgule.

J'ai essayé la macro ci-dessous et le résultat est correct sauf pour une cellule qui dans le fichier txt est 1.3136277, mais qui dans l'import ne se convertit pas.

Feuil1.Cells.Select

Range("O:Y").Select

Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _

SearchOrder:=xlByColumns, MatchCase:=False, SearchFormat:=True, _

ReplaceFormat:=False

Selection.NumberFormat = "0\.0000000"

J'ai également essayé une autre macro, et dans une autre cellule, au lieu d'affiche "0.2458964", c'est affiché le format, soit "0,000000" par exemple.

En pièces jointes les fichiers txt et excel et merci beaucoup d'avance de votre aide qui me sera certainement précieuse.

bonjour

=CNUM(SUBSTITUE(tonnombreavecunpoint;".";","))

surtout pas de VBA

bonjour

tu renomme ton fichier txt en csv

et tu click dessus et tu regarde si ses bon

A+

Maurice

bonjour

voila un macro par rapport a ton fichier TXT

Private Sub ChoixFicTxt()
Dim dossier As FileDialog
ChoixChemin = ActiveWorkbook.Path & Application.PathSeparator
   Set dossier = Application.FileDialog(msoFileDialogFilePicker)
      With dossier
         .AllowMultiSelect = False
         .InitialFileName = ChoixChemin
         .Title = "Choix d'un fichier TXT"
         .Filters.Clear
         .Filters.Add "Fichier Csv ", "*.txt*", 1
            If .Show = -1 Then
               Chemin = .SelectedItems(1)
               LireMan Chemin
            End If
      End With
   Set dossier = Nothing
End Sub

Sub LireMan(NomFichier)
Dim Ar() As String
   With Application
      .ScreenUpdating = False
      .EnableEvents = False
      .Calculation = xlManual
   End With
Rows("1:" & Rows.Count).ClearContents
Sep = ";"
Lig = 1
' -----------------------------------------
On Error Resume Next
   Open NomFichier For Input As #1
        Do While Not EOF(1)
            Line Input #1, Chaine
               Ar = Split(Chaine, Sep)
               Col = 1
                  For X = LBound(Ar) To UBound(Ar)
                     Select Case Col
                        Case 7 To 9
                           Cells(Lig, Col).Value = CDate(Ar(X))
                        Case 19 To 21
                           Cells(Lig, Col).Value = Replace(Ar(X), " ", "")
                        Case Else
                           Cells(Lig, Col).Value = Ar(X)
                     End Select
                     Col = Col + 1
                  Next
            Lig = Lig + 1
        Loop
    Close #1
' -----------------------------------------
   With Application
      .ScreenUpdating = True
      .Calculation = xlCalculationAutomatic
      .EnableEvents = True
      .CutCopyMode = False
      .Goto [A1], True
   End With
End Sub

A+

Maurice

UN GRAND MERCI.

Ca fonctionne parfaitement et répond à mes attentes. Merci infiniment.

Rechercher des sujets similaires à "import fichier txt point convertir virgule"