Ce code permet d'importer dans une feuille d'un classeur EXCEL les données d'un fichier texte. Il faut référencer la bibliothèque d'objets d'EXCEL dans le projet.
Source / Exemple :
Option Explicit
'Ce code fait appel à la bibliothèque Microsoft EXCEL (Microsoft Excel Library).
'Il ne faut pas oublier de la référencer dans le projet.
Private Sub cmdTextEXCEL_Click()
Dim Appli As New Application
Dim Ligne As String
Dim LigneExcel As Integer
Dim PointVirgule1, PointVirgule2 As Integer
Dim Long1, Long2, Long3 As Integer
Dim Data1, Data2, Data3 As String
Dim stFichier As String
If Right(App.Path, 1) = "\" Then
stFichier = App.Path
Else
stFichier = App.Path + "\"
End If
'Ouvrir le fichier texte "Depart75.txt" en mode lecture
Open stFichier + "Depart75.txt" For Input As #1
'Rendre visible EXCEL
Appli.Visible = True
'Créer un nouveau classeur EXCEL initialisé à la ligne 1
Appli.Workbooks.Add.Activate
LigneExcel = 1
'Inscrire le contenu du fichier texte dans la feuille 1 du classeur EXCEL
Do While EOF(1) = False
Line Input #1, Ligne
'Rechercher la position des points virgules
PointVirgule1 = InStr(1, Ligne, ";")
PointVirgule2 = InStr(PointVirgule1 + 1, Ligne, ";")
'Affecter les données à la Data1 et à la Data2
Data1 = Mid(Ligne, 1, PointVirgule1 - 1)
Data2 = Mid(Ligne, PointVirgule1 + 1, (PointVirgule2 - PointVirgule1 - 1))
'Calculer la longueur de la Data3
Long1 = Len(Data1)
Long2 = Len(Data2)
Long3 = Len(Ligne) - (Long1 + Long2 + 2)
'Affecter les données à la Data3
Data3 = Mid(Ligne, PointVirgule2 + 1, Long3)
'Affecter Data1, Data2 et Data3 dans les cellules de la feuille 1
With ActiveWorkbook.Worksheets("Feuil1")
.Cells(LigneExcel, 1) = Data1
.Cells(LigneExcel, 2) = Data2
.Cells(LigneExcel, 3) = Data3
LigneExcel = LigneExcel + 1
End With
Loop
Close
MsgBox "Importation terminée.", vbInformation + vbOKOnly, "Fichier Texte -> Classeur EXCEL"
End Sub
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.