[résolu]Synthétiser des données sauf quand "zéro"

jozerebel

XLDnaute Occasionnel
Salut à tous!

J'ai un tableau qui énumère le nombre de Week end, de jours vacances.... sachant que les intitulés (WE, JVF....) sont en dur dans des colonnes et que des formules viennent alimenter la colonne précédente immédiate pour indiquer le nombre d'occurences.

Je cherche, sans imbriquer des tas de conditions "Si"; à synthétiser seulement les items qui sont non nuls...

Comme un exemple vaut mieux que toutes les explications du monde, je poste un fichier.

Merci pour votre aide!
 
Dernière édition:

david84

XLDnaute Barbatruc
Re : Synthétiser des données sauf quand "zéro"

Bonsoir,
pour WE :
Code:
=SOMME.SI(B1:L1;"WE";A1:K1)
Je te laisse adapter pour JVF.
A+

Edit : pour avoir tout dans la même cellule :
Code:
=SOMME.SI(B1:L1;"WE";A1:K1)&" WE"&" + "&SOMME.SI(B1:L1;"JVF";A1:K1)&" JVF"
 
Dernière édition:

jozerebel

XLDnaute Occasionnel
Re : Synthétiser des données sauf quand "zéro"

Salut David,

hélas,cela ne semble pas correspondre à mes attentes. Je ne souhaite afficher que ce qui est différent de 0. or, ta formule me renvoie "0 WE" quand il n'y a pas de WE.

Une idée?
 

Yaloo

XLDnaute Barbatruc
Re : Synthétiser des données sauf quand "zéro"

Re jozerebel, bonsoir David,

Voir avec cette fonction personalisée

VB:
Function Vac()
Dim i, j&, c&
Application.Volatile
j = [XFD1].End(xlToLeft).Column
For c = 1 To j Step 2
  Debug.Print Cells(1, c) & " " & Cells(1, c + 1) & " + "
  If Cells(1, c) <> 0 Then i = i & Cells(1, c) & " " & Cells(1, c + 1) & " + "
Next
Vac = Left(i, Len(i) - 2)
End Function

A te relire

Martial
 

Pièces jointes

  • jozerebel.xlsm
    15.5 KB · Affichages: 33
  • jozerebel.xlsm
    15.5 KB · Affichages: 35
  • jozerebel.xlsm
    15.5 KB · Affichages: 33

Yaloo

XLDnaute Barbatruc
Re : Synthétiser des données sauf quand "zéro"

Voici avec ton fichier précédent :
VB:
Function Vac(Zone As Range)
Dim i, j&, c&
 Application.Volatile
 j = Zone.Row
For c = 1 To 12 Step 2
   Debug.Print Cells(1, c) & " " & Cells(1, c + 1) & " + "
   If Cells(j, c) <> 0 Then i = i & Cells(j, c) & " " & Cells(j, c + 1) & " + "
Next
If i <> "" Then Vac = Left(i, Len(i) - 2) Else: Vac = ""
End Function

A te relire

Martial
 

Pièces jointes

  • jozerebel.xlsm
    16 KB · Affichages: 40
  • jozerebel.xlsm
    16 KB · Affichages: 40
  • jozerebel.xlsm
    16 KB · Affichages: 38

jozerebel

XLDnaute Occasionnel
Re : Synthétiser des données sauf quand "zéro"

Salut Yaloo,

petit souci avec la macro formule.

Lorsque je change d'onglets et que je revalide une autre cellule, les résultats de la formule-macro s'effacent et je suis obligé de revalider et étirer la formule...

As-tu uns idée du pb?
 

jozerebel

XLDnaute Occasionnel
Re : Synthétiser des données sauf quand "zéro"

Salut Yaloo,

non, pas de macro évènementielle.

Ci-joint fichier que tu m'as transmis avec problème quand une formule de la feuille 2 fait référence à une des cellules avec la macro-formule (effacement du contenu).

merci pour ton aide.
 

Pièces jointes

  • jozerebel2.xlsm
    16.2 KB · Affichages: 28
  • jozerebel2.xlsm
    16.2 KB · Affichages: 28
  • jozerebel2.xlsm
    16.2 KB · Affichages: 28

Yaloo

XLDnaute Barbatruc
Re : Synthétiser des données sauf quand "zéro"

Bonsoir jozerebel,

C'est normal que ça plante tu as inséré une colonne à gauche, donc ça change la donne.
Fais un essai avec le fichier ci-dessous, cela devrait fonctionner.
Ta formule de recherchev n'était pas correcte, je l'ai modifié aussi.

A+

Martial
 

Pièces jointes

  • jozerebel2.xlsm
    16.1 KB · Affichages: 28
  • jozerebel2.xlsm
    16.1 KB · Affichages: 35
  • jozerebel2.xlsm
    16.1 KB · Affichages: 35

Statistiques des forums

Discussions
312 368
Messages
2 087 654
Membres
103 630
dernier inscrit
Azashoriu