Copier une plage sélectionnée sou excel dans un txt - VB/VBA/VBS - Programmation
Marsh Posté le 30-05-2008 à 15:09:48
Personne n'ayant pu me répondre je suis passé par un autre moyen, je viens simplement l'ajouter au cas ou quelqu'un aurait le même problème : 
 
L'écriture de données excel dans un fichier texte depuis une macro VBA est apparament impossible, du moins je n'ai pas trouvé comment faire. 
 
J'ai donc créé un nouvel onglet dans lequel j'ai collé la plage de donnée sélectionnée sur ma feuille principale, puis j'ai sauvegardé l'onglet en tant que fichier texte. J'ai ensuite supprimé l'onglet. 
 
Au niveau du code ça donne ça : 
 
Sheets.Add.Move After:=Sheets(Sheets.Count)         'rajout de la feuille 
ActiveSheet.Name = ("temp1" ) 
Sheets("Tarif" ).Select 
Range(Cells(cat1, 1), Cells(cat1bis - 1, 1)).Select      ' sélection de la plage à copier 
Selection.Copy 
Sheets("temp1" ).Select 
ActiveSheet.Paste 
 
Sheets("temp1" ).SaveAs Filename:="C:\a\ref1.txt", FileFormat:=xlTextPrinter, CreateBackup:=False          'enregistrement en tant que fichier texte 
 
Application.DisplayAlerts = False                              'suppression de l'onglet temporaire créé (avec désactivation du message "voulez vous supprimer ...) 
ActiveSheet.Delete 
Application.DisplayAlerts = True
Marsh Posté le 29-05-2008 à 18:52:56
Salut,
J'aimerais débiter un fichier excel en plusieurs fichiers TXT et j'ai déjà réalisé la partie du code permettant de réaliser la sélection des différentes plages, en revanche je n'arrive pas à coller ces plages dans le fichier text que je crée.
Si quelqu'un avait l'idée du code ça m'aiderai, voici ce que j'ai essayé (et qui ne marche pas) :
data = Range(Cells(cat1, 1), Cells(cat1bis - 1, 1)).Value
Open "C:\...\test.txt" For Output As #1
Print #1, data
Close #1
Merci d'avance