Vba macro pour traiter des données txt

malouve Messages postés 56 Date d'inscription mardi 5 juin 2007 Statut Membre Dernière intervention 20 juillet 2010 - 19 juil. 2010 à 20:09
malouve Messages postés 56 Date d'inscription mardi 5 juin 2007 Statut Membre Dernière intervention 20 juillet 2010 - 20 juil. 2010 à 18:16
Bonjour,

je sollicte votre aide pour un problème sur lequel je bute depuis quelques jours , j'ai fait une macro me permettant d'ouvrir un fichier txt dans xls et de copier les données vers un autre classeur ou le nom de chaque feuille correspond au nom d'un fichier txt.
Mon premier problème se situe au niveau de la copie , dans le fichier xls, je voudrais conserver la mise en forme de destination mais lorsque j'utilise

ActiveSheet.PasteSpecial Paste:=xlPasteValues
rien ne se passe
par contre

ActiveSheet.Paste 
me copie exactement les données en ecrasant évidemment la mise en forme .
comment puis-je conserver ma mise en forme de destination et ne copier que les valeurs?

Second problème: mon fichier txt se présente comme suit:
xxxx
date
14/07/2010 00:00 120 12 058 1921
14/07/2010 01:00 120 10 632 1758
14/07/2010 02:00 120 4 925 1042

la première colonne contient du txt et des dates au format ci -dessus . Aprés la copie ,je trace des courbes prenant la première colonne en abscisses ( que les dates). Les graphiques ne sont pas faites en macro , juste de manière manuelle dans la feuille (réference aux données) mais je n'ai pas les données voulues sur l'axe des abscisses , je trouve souvent des incrémentations du jour et heure qui reste à 00:00 ou même des nombres comme 40376 ...


je ne sais pas non plus comment forcer la plage de données à prendre les valeurs exactes dans le format voulu.
J'ai essayé de le faire manuellement en enregistrant la macro mais le problème demeure
Je sais que le problème vient du format .txt en .xls
En utilisant la fonction Cdate, je ne résouds pas le problème.
Désolez pour la longueur et merci pour vos idées.

3 réponses

malouve Messages postés 56 Date d'inscription mardi 5 juin 2007 Statut Membre Dernière intervention 20 juillet 2010
20 juil. 2010 à 11:11
bonjour à tous,
je sèche pas mal et donc voudrais solliciter toute personne ayant rencontrer ce genre de difficulté à vouloir bien me venir en aide.

merci beaucoup
0
cs_abdellatyif Messages postés 32 Date d'inscription jeudi 10 juillet 2003 Statut Membre Dernière intervention 29 juillet 2010
20 juil. 2010 à 13:11
ActiveSheet.PasteSpecial Paste:=xlPasteValues
pour copier le text sans modifier la mise en forme de la cellule tu dois utilisé la commande suivante
ActiveCell.FormulaR1C1="text"


met ton text dans un variable puis tu le met en suit dans la cellule
0
malouve Messages postés 56 Date d'inscription mardi 5 juin 2007 Statut Membre Dernière intervention 20 juillet 2010
20 juil. 2010 à 18:16
merci Adbellatyif,
mais je ne comprends pas trop ce que tu as écris.
J'ai essayé de faire comme j'ai compris , mais çà ne me copie pas les données contenues dans le fichier txt.
je souligne que le fichier txt est ouvert par une application xls.
donc si tu peux etre plus explicite çà m'aiderait à comprendre ton idée

mon txt est dans un sheet et comment copier tout cela dans une cellule ?
0
Rejoignez-nous