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