Aide pour une macro

Fermé
Aquhydro Messages postés 172 Date d'inscription mercredi 8 août 2012 Statut Membre Dernière intervention 26 mai 2020 - 7 oct. 2014 à 16:55
Aquhydro Messages postés 172 Date d'inscription mercredi 8 août 2012 Statut Membre Dernière intervention 26 mai 2020 - 10 oct. 2014 à 09:29
Bonjour,
Je suis entrain d'automatiser pour mon boulot (chercheur en géologie) une petite macro pour comparer des pentes. Je bloque sur quelques étapes :
1) je dois importer deux fichiers *.txt, une par feuille de mon tableur excel. pour l'instant j'en suis là :
Workbooks.OpenText Filename:="C:\Users\Sebastien\Desktop\part1.txt", Origin _
:=xlMSDOS, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, _
Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), _
Array(2, 1), Array(3, 1)), TrailingMinusNumbers:=True
Workbooks.OpenText Filename:="C:\Users\Sebastien\Desktop\part2.txt", Origin _
:=xlMSDOS, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, _
Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), _
Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), Array(7, 1), Array(8, 1), _
Array(9, 1), Array(10, 1)), TrailingMinusNumbers:=True
SelectAll
Selection.Cut
Windows("part1.txt").Activate
Sheets.Add After:=ActiveSheet
Sheets("Feuil1").Select
ActiveSheet.Paste


ça me pose plusieurs problème : 1) ça manque d'élégance, mais ça, je peu m'y faire n'étant pas pro.
2) Si mes fichiers ne s'appellent pas part1.txt et part2.txt, je ne peut rien changer, or mes fichiers s'appellent part1.txt, part2.txt, part3.txt, etc... et il faut que je teste entre elle toutes les combinaisons (part1 avec 2, avec 3, avec 4, puis 2 avec 3, avec 4, puis 3 avec 4...)
3) N'est il pas possible d'importer directement dans un nouvelle feuille plutot que d'ouvrir le fichier et copier coller?

Ensuite, mes fichiers ont un nombre de colonne fixe mais un nombre de ligne variable, et j'aurais besoin d'entrer des formules en bas de colonnes. Pour l'instant, je fais :
Range("A6").Select
ActiveCell.FormulaR1C1 = "=SUM(R[-4]C:R[-1]C)"
Range("B6").Select
ActiveCell.FormulaR1C1 = "=AVERAGE(R[-4]C:R[-1]C)"

Le problème est bien sur que si j'ai plus de 6 lignes en A, et bien j'écrase la A6, et en plus je fais ma somme uniquement sur les données 1à5

j'aurais aussi besoin parfois d'écrire quelque chose "dx" par exemple, dans la 2eme case après la fin de la colonne (quand elle se finit en A6; écrire en A8, par exemple), comment faire?

Merci beaucoup de votre aide, qui sera précieuse.



A voir également:

27 réponses

bonjour

il faut au moin un model de tes fichier Txt pour voir les separateur

A+
Maurice
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
7 oct. 2014 à 17:58
Bonjour,

C'est 2 ou 4 ou combien de fichiers que vous avez a analyser ????

3) -----> Donnees, pave donnees externes, fichier texte

j'aurais aussi besoin parfois d'écrire pas facile en programmation le parfois

pour les formules, si vous n'avez qu'une dizaine de lignes (!!!!!!), peut-etre le faire manuellement meme si quatre onglets

A+
0
Aquhydro Messages postés 172 Date d'inscription mercredi 8 août 2012 Statut Membre Dernière intervention 26 mai 2020 2
Modifié par Aquhydro le 8/10/2014 à 09:16
Alors, je me suis mal exprimé, le parfois veut dire tout le temps.
j'ai besoin de faire, a partir de fichier deux fichiers du type part1, part2, part3, etc... (je peu en avoir jusqu'à part70, mais aussi en avoir que 8), des comparaisons grâce aux opérations contenues dans le tableur excel ci-joint, qui doit systématiquement etre formulé comme tel https://www.dropbox.com/sh/3nnrbh06koea7kd/AACYHkj5ra3Ior67pxAKiRFTa?dl=0

Il est également possible que j'ai 4, 6, 10 ou 79 lignes dans mes documents, je d'ailleurs entrain d'essayer de faire en sorte d'avoir systématiquement plus de 10, donc les exemples données sont surement pas les définitifs car plus tard il y aura plus de 10 lignes.

Désolé pour mes incohérences.
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
Modifié par f894009 le 8/10/2014 à 10:43
Bonjour,

J'ai recupere vos fichiers. Nombre de colonnes fixe, si on veut, mais trois sont utiles.

Toutes les formules sont a ecrire en fonction du nombre de lignes de donnees, mais c'est faisable sans probleme.

Quetions:
les fichiers de donnees sont toujours dans le meme repertoire ?
vous recuperez tous les fichiers en une seule fois ou vous selectionnez ceux qui vous interessent ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Aquhydro Messages postés 172 Date d'inscription mercredi 8 août 2012 Statut Membre Dernière intervention 26 mai 2020 2
8 oct. 2014 à 10:51
Tous sont dans le même répertoire, et je dois systématiquement les comparer deux à deux. C'est à dire que je vais comparer d'abord le 1 avec le 2, puis le 1 avec le 3, puis le 1 avec le 4, jusqu'au 1 avec le n, puis le 2 avec me 3, le 2 avec le 4, le 2 avec le n, jusqu'au n-1 avec le n.
Le fichier excel envoyé permet 1 comparaison.

Je ne comprend pas bien la question sur la récupération... les fichiers sont crées par un logiciel qui crée tout les fichiers, de 1 à n, en une seule fois, dans un répertoire, sous la forme part1, part2, etc...

Pour ce qui est du nombre de colonnes, oui, il est fixe, trois colonnes, systématiquement sur le part, et sur le excel, 10 colonnes, les 10 étant utiles car elles me permettent de calculer ma t statistique finale.
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
8 oct. 2014 à 10:53
Re,

Le fichier excel envoyé permet 1 comparaison. A quel endroit la comparaison ???????
0
Aquhydro Messages postés 172 Date d'inscription mercredi 8 août 2012 Statut Membre Dernière intervention 26 mai 2020 2
8 oct. 2014 à 11:03
Feuil 2 cellule B15, c'est le calcul de la statistique t, qui permet de comparer deux pentes, la pente de mes parties 1 et 2.
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
8 oct. 2014 à 12:22
Re,

Desole, aucune reference a la feuil1 en feuil2!B15
0
Aquhydro Messages postés 172 Date d'inscription mercredi 8 août 2012 Statut Membre Dernière intervention 26 mai 2020 2
Modifié par Aquhydro le 8/10/2014 à 12:47
en effet c'est une erreur la bonne formule est =(B12-Feuil1!B10)/RACINE(D12+Feuil1!D10)
0
Bonjour
Voila une macro pour le cumul des fichier TxT

mettre tout les txt dans un repertoire

http://cjoint.com/?3JinjbpNzEc

A+

Maurice
0
Aquhydro Messages postés 172 Date d'inscription mercredi 8 août 2012 Statut Membre Dernière intervention 26 mai 2020 2
8 oct. 2014 à 13:53
comment faire pour que plutot que de cumuler, les avoir sur deux pages?
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
8 oct. 2014 à 14:58
Re,

en attendant

Recuperation des fichiers, un par onglets: https://www.cjoint.com/c/DJipbt09a88

Mettez votre chemin fichiers
0
Aquhydro Messages postés 172 Date d'inscription mercredi 8 août 2012 Statut Membre Dernière intervention 26 mai 2020 2
8 oct. 2014 à 15:17
Je n'arrive pas du tout à l'utiliser...
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
8 oct. 2014 à 15:44
Re,

Pourquoi ????????????????????????
0
Aquhydro Messages postés 172 Date d'inscription mercredi 8 août 2012 Statut Membre Dernière intervention 26 mai 2020 2
8 oct. 2014 à 15:52
Erreur d'execution '52': nom ou uméro de fichier incorrect, et je retrouve pas ou changer ce dit nom de fichier
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
8 oct. 2014 à 16:03
Re,

Module MTraitement au debut il y a une constante Rep avec pour moi un chemin, mettez le votre (ce que j'ai ecrit Lien (#12))
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
8 oct. 2014 à 17:27
Re,

fichier avec import fichiers txt, ecriture formules sauf la formule de comparaison (demande reflextion pour empilage): https://www.cjoint.com/c/DJirCOAkOPr

A+
0
Aquhydro Messages postés 172 Date d'inscription mercredi 8 août 2012 Statut Membre Dernière intervention 26 mai 2020 2
9 oct. 2014 à 09:00
Merci beaucoup !!

Je vais continuer de chercher pour la formule de comparaison, je vous dit si je trouve ok?
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 702
9 oct. 2014 à 09:04
Bonjour,

la formule de comparaison dans votre exemple, en B15 ce n'est pas une comparaison que vous faites, c'est un calcul de quelque chose !!!!!!!!
0
Aquhydro Messages postés 172 Date d'inscription mercredi 8 août 2012 Statut Membre Dernière intervention 26 mai 2020 2
9 oct. 2014 à 09:08
Pour l'instant il me met cette ligne en jaune et me dit erreur 9, l'indice n'appartient pas à la séléction:
Call QuickSort(TFichiers(), LBound(TFichiers), UBound(TFichiers))
0