Organiser séries de valeurs

Fermé
Keyran - 29 mai 2018 à 13:52
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 - 4 juin 2018 à 21:09
Bonjour,

Dans le cadre de mon stage, je dois traiter d'importantes quantités de données, et je viens ici pour chercher de l'aide.

J'ai globalement 10 séries de valeurs pour 10 échantillons, et je voudrais effectuer une moyenne sur chaque valeur (+ de 1500).

Le problème est que chaque série est donnée sous un format xy, et les x ne sont pas exactement les mêmes (à 95% identiques).

Je vous explique en très simplifié :

a-x1 a-x2
b-y1 b-y2
c-z1 d-z2
d-w1 e-w2
f-v1 f-v2

J'ai ici deux séries de valeurs et je voudrais avoir :

a-x1-x2
b-y1-y2
c-z1
d-w1-z2
e-w2
f-v1-v2

C'est à dire mixer les abcisses afin d'avoir un seul axe, et pour chaque abcisse avoir les différentes valeurs des échantillons.

La quantité de points étant astronomique, je ne peux pas faire tout cela à la main. J'espère que mon problème est clair et que vous parviendrez à m'aider.

Merci d'avance,
Rose

7 réponses

rEVOLV3r Messages postés 223 Date d'inscription jeudi 12 août 2010 Statut Membre Dernière intervention 21 septembre 2022 28
29 mai 2018 à 15:53
Hello,

Il serait plus simple de créer la macro si nous avions un échantillon de ton fichier.
Cependant si tu souhaites développer la procédure par toi-même (ça peut être un bon apprentissage), j'utiliserais la fonction find avec du findnext qui est très rapide.

With Worksheets(1).Range("a1:a500")
Set c = .Find(2, lookin:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
c.Value = 5
Set c = .FindNext(c)
If c is Nothing Then
GoTo DoneFinding
End If
Loop While c.Address <> firstAddress
End If
DoneFinding:
End With

En résumé, pour chaque x différents tu viens chercher ses valeurs et tu les concatènes dans un tableau d'une autre page. Le find est extrêmement rapide, cela devrait prendre 30-1min maximum à exécuter.
0
Merci beaucoup j'essaierai ça demain, comme je n'ai pas les fichiers sur mon ordinateur personnel.

J'ai posté une partie de mon fichier sur la réponse suivante, si tu penses que ton programme marche ca serait top !

Merci encore, vraiment.
0
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
29 mai 2018 à 15:56
Bonjour

Pas très clair !
Peux tu envoyer un bout de ton fichier sur cjoint.com et joindre le lien obtenu à ton prochain message. N'oublies pas d'y ajouter des explications et des exemples de résultat attendu
1) Tu vas dans https://www.cjoint.com/
2) Tu cliques sur [Parcourir] pour sélectionner ton fichier
3) Tu descends en bas de la page pour cliquer sur [Créer le lien Cjoint]
4) Au bout de quelques secondes la deuxième page s'affiche, avec le lien
en bleu souligné ; tu le sélectionnes et tu fais "Copier"
5) Tu reviens dans ta discussion sur CCM, et dans ton message de réponse tu fais "Coller".

Cdlmnt
0
Bonjour,

https://www.cjoint.com/c/HEDpi7D1pet

Voilà une version simplifiée avec uniquement les 5 premières valeurs de 3 échantillons et ce que je souhaiterais avoir.
Il faut noter qu'ici les échantillons ont tous la même taille mais ce n'est pas le cas chez moi.

Merci de votre aide !
0
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
29 mai 2018 à 18:20
A tester

https://www.cjoint.com/c/HEDqusS7mdB

Cdlmnt
0
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
Modifié le 29 mai 2018 à 20:08
lien modifié
https://www.cjoint.com/c/HEDshUxZNMB
0
Ca marche tres bien merci c'est top !
Le seul probleme qu'il me reste c'est que les virgules de mes masses ont disparu, mais je devrais trouver par moi-même comment les réinsérer.

Merci encore, t'es tres fort !
0

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

Posez votre question
Enfin ça reste un probleme car toutes les masses n avaient pas le meme nombre de chiffres apres la virgule donc une simple division ne suffit pas...
J y reflechis !
0
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
Modifié le 30 mai 2018 à 14:36
Le seul probleme qu'il me reste c'est que les virgules de mes masses ont disparu
Tu veux parler des valeurs m/z dans le résultat obtenu ? Chez moi, elles y sont bien


au cas où, essaies en déclarant cle comme double
Dim dico As Object, cle As Double,
0
Désolée de ne pas avoir répondu plus tôt, j'ai eu d'autres tâches à réaliser avant de pouvoir tester ton programme.

Avec "cle As double", les virgules sont là. Je te remercie vraiment, je n'aurais pas pu faire ça toute seule.
Rose
0
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
4 juin 2018 à 21:09
De rien,
Si c'est fini, peux tu mettre le sujet à résolu (en haut à droite, la roue dentée)
Bonne soirée
0