Copier une plage sélectionnée sou excel dans un txt

Copier une plage sélectionnée sou excel dans un txt - VB/VBA/VBS - Programmation

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

Reply

Marsh Posté le 29-05-2008 à 18:52:56   

Reply

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

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed