Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2172 connectés 

  FORUM HardWare.fr
  Programmation
  Divers

  [Excel] somme conditionelle su deux colonnes ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Excel] somme conditionelle su deux colonnes ?

n°2041344
vingtcent
C'est c'laaaa ouiiii !
Posté le 10-12-2010 à 15:09:57  profilanswer
 

Bonjour,
 
J'ai un tableau avec 31 lignes pour les 31 jours du mois et pour chaque mois deux colonnes pour matin et après-midi. Pour un jour les deux cellules peuvent être fusionnée en une seule. Chaque cellule (demi journée ou journée fusionnée) contient soit un nombre, soir un code.  
 
Je coince d'une part sur comment compter le nombre de journée(et demi journée) ou un chiffre est présent.  
 
J'utilise pour compter les journée avec un chiffre la formule : =NB.SI(B5:C35;">-40" )-0,5*NB.SI(B5:C35;"*/2" )
Et pour compter les journées avec un code particulier : =NB.SI(B5:C35;"C" )+0,5*NB.SI(B5:C35;"C/2" )
 
J'indique pour le moment "C" comme code pour tout la journée (quand les cellules sont fusionnées) et "C/2" pour une demi journée.
 
D'une part, il serait plus élégant de mettre le même code que se soit pour une demi journée ou pour une journée complète.
 
D'autre part en procédant de la suite le nombre de journée ou un montant à été introduit est incorrecte si pour au moins une journée j'ai introduit deux codes différents pour le matin et l'après-midi.
 
Auriez-vous une piste pour résoudre mes problèmes qui me semble être lié (Comment déterminé si le code se rapporte à deux cellules fusionnées ou à une cellule unique ?
 
Merci
 
V

mood
Publicité
Posté le 10-12-2010 à 15:09:57  profilanswer
 

n°2041398
Xxxaaavvv
Posté le 10-12-2010 à 17:25:21  profilanswer
 

Si tu ajoute un module de code à ton projet VBA avec ceci :


Public Function ESTFUSIONNEE(objCellules As Range)
On Error GoTo ESTFUSIONNEE_Error
 
   ESTFUSIONNEE = False
   If objCellules.MergeCells Then
      Debug.Print objCellules.MergeCells
      ESTFUSIONNEE = True
   End If
 
Exit Function
ESTFUSIONNEE_Error:
End Function


 
 
tu pourra utiliser la formule suivante :
 
=ESTFUSIONNEE(D7)
 
renvois VRAI si D7 fait parti d'une plage fusionnée
 
donc en théorie combinée avec un SI, tu devrais pouvoir faire tes calculs.

n°2041401
Xxxaaavvv
Posté le 10-12-2010 à 17:28:04  profilanswer
 

Enfin, ça c'est si tu veux principalement travailler avec des formules...
 
parceque sinon tu te développe une formule unique purement VBA :D
(même type de déclaration : fonction publique acceptant un range)

n°2041478
vingtcent
C'est c'laaaa ouiiii !
Posté le 11-12-2010 à 09:55:37  profilanswer
 

Bonjour,
 
Merci pour ton aide.
 
J'ai trouver grâce à google la fonction MergeCells. mais ne connaissant pas du tout VBA, j'avais espérer pouvoir m'en passer. Je vais essayer de trouver un petit tuto pour me lancer dans VBA.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Divers

  [Excel] somme conditionelle su deux colonnes ?

 

Sujets relatifs
programmation sous excelCopier feuille Excel vers un autre classeur qui bloque
Renommer automatiquement nom cellule ExcelDeux colonnes, éléments à la même hauteur
Aide pour une macro sous Excel :([Vba pour Excel 2003] Ouverture auto ComboBox et reco touche Entrée.
[EXCEL] Numéroter ligne Uniquement rempliesFormulaire Excel Commissions
[CSS] Réalisation d'un site trois colonnes flottantes dans DivMonitoring d'applications Excel et Access
Plus de sujets relatifs à : [Excel] somme conditionelle su deux colonnes ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR