Fichier txt
E
Bonjour à tous je suis nouveau sur le forum et aussi sur VBA.
Je voudrais que mon code me permette de renommer la feuille dans laquelle je travail et aussi enregistrer sous format excel le classeur.
La feuille et le classeur doivent s'appeler pareil et leur nom dépend du nom du fichier .txt que je suis allé chercher.
Voici le code que j'ai écris pour aller chercher le fichier .txt:
Sub ChargerFichier()
Dim Nomfichierentree As String, S As String
'Empèche les messages comme Pas sauver.. Le presse papier est rempli etc..
Application.DisplayAlerts = False
'Supprime le rafraichissement de l'écran pour accélérer le processus
Application.ScreenUpdating = False
'Attend le chemin complet et le nom du fichier txt.
Nomfichierentree = Application.GetOpenFilename("Fichier Texte (*.txt), *.txt")
If Nomfichierentree = "Faux" Then Exit Sub 'cliquer sur annuler
'Ouvre le fichier texte en séparant les colonnes avec les espaces.
Workbooks.OpenText Filename:= _
Nomfichierentree, Origin:=xlWindows, _
StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, Semicolon:=False, _
Comma:=False, Space:=True, Other:=False, FieldInfo:=Array(Array(1, 1), _
Array(2, 1), Array(3, 1), Array(4, 1)), TrailingMinusNumbers:=True
'copies des données
With ActiveWorkbook
'Renvoi la dernière adresse absolue de la plage utilisée
'Range("A1").SpecialCells(xlCellTypeLastCell).Address
S = "A1:" & Range("A1").SpecialCells(xlCellTypeLastCell).Address
ActiveSheet.Range(S).Copy
'Ferme le classeur texte mais les données sont dans le presse-papier
.Close
End With
Range("A1").Select
'Met les données du presse-papier sur la feuille active (celle avec le bouton)
ActiveSheet.Paste
'Rétabli les fonction de messages d'alertes.
Application.DisplayAlerts = TrueMerci pour votre aide
Merci pour l'info en mp!