Bonjour,
Peut-être que quelqu'un pourrait m'aider.
Je souhaite enregistrer une feuille excel qui contient un tableau en un fichier .txt
FanFan38 m'a proposé ce code ci-dessous et il fonctionne super bien. Merci à lui et aussi pour les autres formules VBA.
Son aide a été très précieuse.
Ma contrainte est la suivante : le séparateur de champ doit être le caractère de tabulation (ascii 9)
Après essai du code, j'ai constaté que le séparateur de champ (colonne) était un point virgule. De ce fait l'import par la suite du fichier .txt ne fonctionne pas.
Auriez-vous une idée pour que l'enregistrement du fichier se fasse bien avec lé séparateur adéquate.
Je suis sous Mac.
Merci d'avance pour votre aide.
Frédéric
Sub enregistrer()
Dim i As Long, j As Long, DernièreLigne As Long, chemin As String, fich As String
chemin = ActiveWorkbook.Path
fich = InputBox("Nom du fichier", "Fichier TEXTE")
Application.ScreenUpdating = False 'Fige l'écran (évite les mvt d'écran)
Open chemin & "\" & fich & ".txt" For Output As #1 'Tu crées le fichier text
Worksheets("IMPORT DANS COGILOG").Select
DernièreLigne = Cells(1, 2).SpecialCells(xlCellTypeLastCell).Row - 1
For i = 1 To DernièreLigne
For j = 1 To 107
Print #1, Cells(i, j).Value & ";"; 'ici, le séparateur
Next j
Print #1, Cells(i, j + 1).Value ' ici pas de séparateur pr le saut de ligne
Next i
Close #1
Application.ScreenUpdating = True
MsgBox "La feuille a été enregistré dans : FREDERIC>Utilisateurs>frederic> !"
End Sub
Peut-être que quelqu'un pourrait m'aider.
Je souhaite enregistrer une feuille excel qui contient un tableau en un fichier .txt
FanFan38 m'a proposé ce code ci-dessous et il fonctionne super bien. Merci à lui et aussi pour les autres formules VBA.
Son aide a été très précieuse.
Ma contrainte est la suivante : le séparateur de champ doit être le caractère de tabulation (ascii 9)
Après essai du code, j'ai constaté que le séparateur de champ (colonne) était un point virgule. De ce fait l'import par la suite du fichier .txt ne fonctionne pas.
Auriez-vous une idée pour que l'enregistrement du fichier se fasse bien avec lé séparateur adéquate.
Je suis sous Mac.
Merci d'avance pour votre aide.
Frédéric
Sub enregistrer()
Dim i As Long, j As Long, DernièreLigne As Long, chemin As String, fich As String
chemin = ActiveWorkbook.Path
fich = InputBox("Nom du fichier", "Fichier TEXTE")
Application.ScreenUpdating = False 'Fige l'écran (évite les mvt d'écran)
Open chemin & "\" & fich & ".txt" For Output As #1 'Tu crées le fichier text
Worksheets("IMPORT DANS COGILOG").Select
DernièreLigne = Cells(1, 2).SpecialCells(xlCellTypeLastCell).Row - 1
For i = 1 To DernièreLigne
For j = 1 To 107
Print #1, Cells(i, j).Value & ";"; 'ici, le séparateur
Next j
Print #1, Cells(i, j + 1).Value ' ici pas de séparateur pr le saut de ligne
Next i
Close #1
Application.ScreenUpdating = True
MsgBox "La feuille a été enregistré dans : FREDERIC>Utilisateurs>frederic> !"
End Sub