Fonction de recherche
Emi
-
michel_m Messages postés 18903 Statut Contributeur -
michel_m Messages postés 18903 Statut Contributeur -
Bonjour à toutes et à tous,
je viens vers vous afin de trouver un peu d'aide sur un code VBAexcel que je n'arrive pas à terminer. Je suis actuellement étudiante en physique et je n'ai que des bases en informatique et en codage VBA, mais voilà mon projet de semestre nécessite quelques traitements VBAexcel et j'avoue me sentir complètement perdue. J’espère qu'ici je pourrais trouver l'aide dont j'ai besoin pour enfin avancer.
Voilà ce que je veux faire :
Dans ma colonne M j'ai un temps écoulé (en seconde) qui va de 1s à 277s, sur les 277 premières lignes. Ensuite dans les lignes suivantes ce chiffre revient (1 a 277).
Pour chaque ligne dans la colonne C j'ai une coordonnée différente et dans la colonne F un poids.
J'aimerai que le code détecte toutes les lignes ou la même valeur en seconde est inscrite dans la colonne M, et qu'il me permette de faire la moyenne des coordonnées pour lesquels la valeur en seconde est la même et que celle ci soit pondérée par leur poids correspondant.
Ce que j'ai fais :
La pondération etant une difficulté supplémentaire j'ai déja essayé de faire sans pondération :
voila mon code :
Problème :
Mon principal problème c'est que ok, il va me chercher la valeur de temps qui correspond mais moi j'aimerai connaître sa ligne pour que je puisse prendre la bonne cellule correspondante au coordonnées que je veux moyenner.
J'éspère vraiment que l'un d'entre vous pourra m'éclairer et je vous en remercie par avance.
je viens vers vous afin de trouver un peu d'aide sur un code VBAexcel que je n'arrive pas à terminer. Je suis actuellement étudiante en physique et je n'ai que des bases en informatique et en codage VBA, mais voilà mon projet de semestre nécessite quelques traitements VBAexcel et j'avoue me sentir complètement perdue. J’espère qu'ici je pourrais trouver l'aide dont j'ai besoin pour enfin avancer.
Voilà ce que je veux faire :
Dans ma colonne M j'ai un temps écoulé (en seconde) qui va de 1s à 277s, sur les 277 premières lignes. Ensuite dans les lignes suivantes ce chiffre revient (1 a 277).
Pour chaque ligne dans la colonne C j'ai une coordonnée différente et dans la colonne F un poids.
J'aimerai que le code détecte toutes les lignes ou la même valeur en seconde est inscrite dans la colonne M, et qu'il me permette de faire la moyenne des coordonnées pour lesquels la valeur en seconde est la même et que celle ci soit pondérée par leur poids correspondant.
Ce que j'ai fais :
La pondération etant une difficulté supplémentaire j'ai déja essayé de faire sans pondération :
voila mon code :
Sub modulomoyenne()
Dim cell As Range
Dim Trouve As Double, PlageDeRecherche As Range
Dim Valeur_Cherchee As String, AdresseTrouvee As String
Dim tpsi As Double
Dim rmsi As Double
Dim xi As Double
Dim tpsj As Double
Dim rmsj As Double
For i = 2 To 277
tpsi = cell(i, 13)
xi = cell(i, 3)
Valeur_Cherchee = tpsi
Set PlageDeRecherche = feuille1.Range("M278:416")
Set tpsj = PlageDeRecherche.Cells.Find(what:=Valeur_Cherchee, LookAt:=xlWhole)
If tpsj Is Nothing Then
i = i + 1
Else
<bold>cell(i, 14) = Average(cell(i,3):XXXXX)</bold>
i = i + 1
End If
Next i
End Sub
Problème :
Mon principal problème c'est que ok, il va me chercher la valeur de temps qui correspond mais moi j'aimerai connaître sa ligne pour que je puisse prendre la bonne cellule correspondante au coordonnées que je veux moyenner.
J'éspère vraiment que l'un d'entre vous pourra m'éclairer et je vous en remercie par avance.
A voir également:
- Fonction de recherche
- Fonction si et - Guide
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Rechercher ou entrer l'adresse mm - recherche google - Guide
- Recherche image - Guide
- Je recherche une chanson - Guide