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

f894009 Messages postés 17229 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 21 janvier 2025 1 712
9 oct. 2014 à 09:26
Re,

Ca dit qu'il n'y a pas de fichiers avec la partie de nom que vous avez mise ou le chemin n'est pas le bon, mais il existe. Cette erreur peut se traiter facilement
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:27
Alors soit en parle en informatique soit en géostatistiques. En géostatistique, la statistique t permet de comparer deux pentes, donc c'est bel et bien un outil de comparaison. Après, peut être qu'en code ou en informatique (ou je ne m'y connais pas) il s'agit juste d'un calcul de quelque chose.

L'important est que la formule soit =(SlopeA-SlopeB)/racine(ssdA+ssdB) soit =(B12-Feuil1!B10)/RACINE(D12+Feuil1!D10)
0
f894009 Messages postés 17229 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 21 janvier 2025 1 712
9 oct. 2014 à 09:38
Re,

modifie avec message si pas de fichier: https://www.cjoint.com/?DJjjJxVElU5

donc c'est bel et bien un outil de comparaison je ne vous contrarierai pas sur le sujet

pour les calculs de formule, je regarde a la chose pour que cela se fasse automatiquement en fonction du nombre de fichier(s)
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:47
Merci beaucoup!
Je ne voulais pas sembler agressif je suis juste maladroit.

Pour ce qui est du traitement, ça commence à bien marché, pour l'instant ça a ouvert le premier fichier(part1), et ça a placé les dx, dy, dxx... dei*dei, slope, intercept, ssd, et les sommes et moyennes.
0

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

Posez votre question
f894009 Messages postés 17229 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 21 janvier 2025 1 712
9 oct. 2014 à 09:49
Re,

Je ne voulais pas sembler agressif je suis juste maladroit.

y a pas de lezards
0
f894009 Messages postés 17229 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 21 janvier 2025 1 712
9 oct. 2014 à 18:32
Re,

Pouvez-vous faire les comparaisons completes entres fichiers pour 4 fichiers et 6 fichiers sur votre model (part1 avec 2, avec 3, avec 4, puis 2 avec 3, avec 4, puis 3 avec 4...) de facon a avoir votre facon de proceder qui est surement la meme que moi mais ........

A+
0
Aquhydro Messages postés 172 Date d'inscription mercredi 8 août 2012 Statut Membre Dernière intervention 26 mai 2020 2
10 oct. 2014 à 09:29
Une chercheuse travaillant avec moi à finalement codé sous python une solution qui est plus façile que sous excel,

Je vous remercie beaucoup de votre aide.
0