Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

VBA ENREGISTRER UNE FEUILLE EN FORMAT TXT

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

jeremy6812

XLDnaute Nouveau
Bonjour a tous

Je n'arrive pas a faire une VBA pour copier enregistrer une feuille active dans un format texte en fonction d 'un nom choisi je bloque ca ne marche pas si quelqu'un pouvais me venir en aide 🙂

j'ai un classeur qui doit comporter 8 feuilles

( impossible de le mettre ici , je l'ai relier avec une base de donnée externe microsoft QUERY )
le nom de mon fichier doit etre en feuille 6 ( cells (2,6) )

la feuille que je veux copier et enregistrer en format txt est la feuille active ou feuille 8

je veux copier enregistrer la feuille 8, en suivant un chemin specifique et enregistrer cette copy en format texte ( txt )

je bloque c'est tous ce que je suis arrivé a faire mais ca ne fonctionne pas..( je suis nul mais j'essaye de me format... 🙂 )
Si quelqu'un pouvait m'aider 🙂


Sub Macro8()

Dim NomFichier As String, Chemin As String

Chemin = "C:\CGRC\"

NomFichier = Feuil6.Cells(2, 6).Value

ActiveWorksheet.SaveCopyAs Chemin & NomFichier & ".txt"

FileFormat:=xlText, CreateBackup:=False

MsgBox (NomFichier)

End Sub
 
Salut Jeremy,
A tester car je ne l'ai pas fait.
En principe c'est bon.
Attention à la fin de la ligne......& ".txt" il faut (virgule espace et tiret_bas),
chose manquante dans ta macro . . .
Bruno
VB:
Sub Macro8()
Dim NomFichier As String, Chemin As String
Chemin = "C:\CGRC\"
NomFichier = Feuil6.Cells(2, 6).Value
ActiveSheet.Copy 'on copie l'onglet dans un nouveau fichier
'on enregistre le fichier en txt
ActiveWorksheet.SaveAs Chemin & NomFichier & ".txt", _
FileFormat:=xlText, CreateBackup:=False
MsgBox (NomFichier)
End Sub
 
bonjour et merci de ton aide , j'avais egalement essayer cette solution mais
ca ne fonctionne toujours pas

Erreur exécution objet requis


Je ne comprend vraiment pas....
 

Pièces jointes

  • vbadoc1.jpg
    167 KB · Affichages: 136
Bonjour,
Essaye comme ceci
Code:
Sub formatTXT()
Dim NomFichier As String, Chemin As String
Chemin = "C:\CGRC\"
NomFichier = Feuil6.Cells(2, 6).Value
Feuil8.Copy
ActiveWorkbook.SaveAs Chemin & NomFichier, FileFormat:=xlText
ActiveWorkbook.Close False
End Sub
 
Bonjour aussi à Jacky,
En complément si le fichier existe déjà pour sortir du message sans bug
voici

Edit:OUPS !!!!avec essai le fichier créé n'ai pas supprimé à voir si Jérémy le souhaite.....
VB:
Sub Macro8()
Dim NomFichier As String, Chemin As String
Chemin = ThisWorkbook.Path & "\" '"C:\CGRC\"
NomFichier = Feuil6.Cells(2, 6).Value
ActiveSheet.Copy 'on copie l'onglet dans un nouveau fichier
'on enregistre le fichier en txt
On Error Resume Next ' on gère si le fichier existe déjà
ActiveWorkbook.SaveAs Chemin & NomFichier & ".txt", _
FileFormat:=xlText, CreateBackup:=False
If Err = 0 Then
MsgBox (NomFichier & ".txt a été créé !")
ActiveWorkbook.Close
End If
End Sub
Bruno
 
Dernière édition:
Bonjour

Ca ne fonctionne pas , pour celle de jacky ( je te remercie de ton aide ) message d'erreur
et bruno la macro m'ouvre une copie de la page souhaiter en xls sans rien enregistrer en texte ,

vraiment je ne comprend rien la
 
Bonjour

Ca ne fonctionne pas , pour celle de jacky ( je te remercie de ton aide ) message d'erreur
et bruno la macro m'ouvre une copie de la page souhaiter en xls sans rien enregistrer en texte ,

vraiment je ne comprend rien la
Re..
Hello youky(BJ)
Quel est ce message d'erreur ?
Sur quelle ligne ?
Essaie la PJ
**Feuil6 et Feuil8 sont les "CodeName" des feuilles correspondantes
***Si cela devait ne pas fonctionner, mettre le classeur en ligne
 

Pièces jointes

Dernière édition:
Re avec rectif.
VB:
Sub Macro8()
Dim NomFichier As String, Chemin As String
Chemin = "C:\CGRC\"
NomFichier = Feuil6.Cells(2, 6).Value
ActiveSheet.Copy 'on copie l'onglet dans un nouveau fichier
'on enregistre le fichier en txt
onglet = ActiveWorkbook.Name
On Error Resume Next ' on gère si le fichier existe déjà
ActiveWorkbook.SaveAs Chemin & NomFichier & ".txt", _
FileFormat:=xlText, CreateBackup:=False
If Err = 0 Then
MsgBox (NomFichier & ".txt a été créé !")
ActiveWorkbook.Close
Else
Workbooks(onglet).Close False
End If
End Sub
Bruno
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
169
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…