Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

VBA -->SommeProd + Noms dynamiques

max.lander

XLDnaute Occasionnel
Bonjour à tous,

J'essaye d'utiliser en VBA la fonction sommeprod pour récupérer un numéro de ligne quand la formule est vraie. L'information est stockée dans une variable nommée "X" mais impossible d'aboutir à un résultat convenable. (Cf.fichier)

Les plages de mes cellules sont nommées de façon dynamique.

VB:
Sub Coloration()
Dim x As Integer
For Each ele In Sheets("Planer").Range("C7:I35")


    Projet = Range("A" & ele.Row)

    Jour = Cells(5, ele.Column)
    MsgBox (Jour)
   
    formule = "=sumproduct((""" & Projet & """=Manifestations)*(" & CLng(CDate(Jour)) & ">=Début)*(Fin>=" & CLng(CDate(Jour)) & ")*row(Opérateur))"
    x = Evaluate(formule)
   
    MsgBox (x)
   
   Next
  

End Sub


Pouvez-vous me dire qu'est ce qui ne tourne pas rond ?


Merci par avance.
 

Pièces jointes

  • OP 7.xlsm
    32.7 KB · Affichages: 33

JCGL

XLDnaute Barbatruc
Bonjour à tous,

Ceci te retournera VRAI
VB:
formule = "=sumproduct((""" & PROJET & """=Manifestations)*(" & CLng(CDate(JOUR)) & ">=Début)*(" & CLng(CDate(JOUR)) & Fin >= ")*row(Opérateur))"

A+ à tous
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…