Simplification d'une formule

Résolu
gif50 Messages postés 30 Statut Membre -  
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
J'ai des cellules d'un planning contenant les données suivantes correspondant au moment de la journée et aux nb d'heures éffectuées.
EX :
M6 pour matin 6 heures
S4 pour soir 4heures

Je récupère le nb d'heures avec la formule suivante :
STXT(B6;2;2) qui me récupère les 2 caractères à partir du 2eme dans la cellule B6 (le nb d'heures pouvant dépasser 10)

Ceci de B6 à NB6 pour les 365 jours de l'année.
Je fais la somme avec la formule suivante :
SOMME(SI(B6<>"";STXT(B6;2;2);0);SI(C6<>"";STXT(C6;2;2);0);SI(D6<>"";STXT(D6;2;2);0)etc.. ) jusqu'à la cellule NB6, ce qui me crée une formule extrèmement longue.

Quelqu'un aurait-il une solution pour réduire la longueur de cette formule ?

Merci à tous ceux qui voudront bien se pencher sur mon problème.

Gif50
A voir également:

3 réponses

michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
Bonjour,

qu'il y a t'il dans B6?
0
gif50 Messages postés 30 Statut Membre
 
Pour exemple :
Dans B6 il y a "M6" c'est à dire matin, 6 heures.

En fait le but est de calculer le nombre d'heures effectuées dans une année soit 365 jours donc 365 cellules.
Peut-être est-ce possible par une macro, mais je ne connais pas bien le VB, alors si quelqu'un connait une façon d'automatiser le calcul, ça m'intéresse.

Cordialement,

Gif50
0
Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 448
 
Bonjour
Une bétise:
Ne serait il pas plus simple de créer une ligne supplémentaire pour renvoyer la partie num des cellules,par exemple en ligne 7:

en B7:
=STXT(B6;2;2) à tirer sur toute la longueur du champ jusqu' à NB7
........ne resterait plus que la somme à faire sur la ligne 7

A tout hasard, , pour des questions de présentation:
Cette opération peut se faire pour un tableau complet sur une seconde feuille, cachée, avec le résultat de la somme renvoyé sur la première.
Crdlmnt
PS: dans votre formule, quelle est l'utilité des SI, sachant que STXT(B6;2;2) donnera 0 si B6 n'a qu'une lettre ou rien.
0
gif50 Messages postés 30 Statut Membre
 
Bonjour Vaucluse,

Effectivement la "bétise" fonctionne correctement et simplifie grandement mon problème.
En ce qui concerne le Si, j'ai eu le problème dans un autre tableau ou lieu de renvoyer 0, cela me renvoyait #valeur lorsque la cellule n'était pas remplie.

Merci beaucoup pour cette solution.

Si des fois il existait une solution encore plus simple je suis preneur.

Cordialement,

Gif 50
0
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 282
 
Bonsoir tout le monde,

tu peux faire avec :
=SOMME(STXT(B6:NB6;2;2)*1)
formule matricielle à valider par shift+ctrl+enter, elle doit s'afficher entre { } si c'est bien fait

eric
0