cs_valer
Messages postés140Date d'inscriptionmercredi 26 mai 2004StatutMembreDernière intervention26 juillet 2004
-
10 juin 2004 à 08:14
Vb Lover
Messages postés221Date d'inscriptionvendredi 30 novembre 2001StatutMembreDernière intervention13 février 2010
-
10 juin 2004 à 21:31
bonjour,
j'ai un classeur excel avec dans la colonne A des noms d'opération tels que "finition" ou "prepa composant"
je sais afficher en vba la valeur d'une de ces cases en tapant par ex:
for p=0 to 50
if range("A1").offset(p)="finition" then
page_2.label4.caption=range("B8").offset(p) 'valeur 'correspondante dans la colonne b
end if
next p
Mais si j'ai plusieurs cases finition comment dois-je faire pour toute les additionner??
merci beaucoup :)
cs_valer
Messages postés140Date d'inscriptionmercredi 26 mai 2004StatutMembreDernière intervention26 juillet 2004 10 juin 2004 à 09:32
le truc est un peu + complique,
je peux tres bien avoir une case "finition" en "A12" puis en A13 une case "PrepComp" jusqu'en "A18", en "A19" on a "TestDiode" et enfin en A20 "finition", sachant que les numero de lignes sont completment différent d'un fichier a un autre,
comment faire pour que VBA m'additionne ici ce que contient "finition" (numero des lignes aléatoire, donc methode de recherche comme dans le message precedent.)
merci
Valer
HFanny
Messages postés699Date d'inscriptionmercredi 19 février 2003StatutMembreDernière intervention13 mai 201120 10 juin 2004 à 11:07
Bonjour,
je ne comprends pas bien ton problème.
Si tu sais quelle plage de données parcourir, il te suffit de mettre une variable total (comme l'a fait scoder), et de faire un If pour l'incrémenter !!
Je reprends à partir de ton code :
for p=0 to 50
if range("A1").offset(p)="finition" then
result = result + range("B8").Offset(p).Value
end if
next p
Par contre, tu devrais faire aussi un test pour savoir si tu additionnes bien avec une valeur numérique, avec la fonction IsNumeric().
Si ce que Scoder a dit ne te convient pas, pourrais tu réexpliquer mieux ton problème ?
cs_valer
Messages postés140Date d'inscriptionmercredi 26 mai 2004StatutMembreDernière intervention26 juillet 2004 10 juin 2004 à 11:18
1. j'ai un fichier avec des noms d'operation dans la colonne
2.a ces operation correspondent un temps dans la colonne D
3.si plusieurs opération ont le meme nom, elles ne sont pas forcement a la suite
4.j'ai quelques 500 fichiers a traiter , où les opérations sont disposées dans des ordres totalement différents.
5.je dois additionner le total des temps allouée a chaque opération ayant le meme nom
si tu as besoin de plus d'info fais moi signe
merci
je v qd meme tester ce que tu m'a dit, ca a pas l'air bete!! :-p
Valer
Vb Lover
Messages postés221Date d'inscriptionvendredi 30 novembre 2001StatutMembreDernière intervention13 février 20105 10 juin 2004 à 21:31
Si j'ai bien compris, le problème principal, c'est que les fonctions ne sont pas dans l'ordre. Il suffit donc simplement de les trier (fonction Sort ou SortSpecial)