Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Critères d'extraction

4 réponses
Avatar
dan
Bonjour à tous,

J'utilise la fonction suivante pour compter un nombre total d'items dans ma
collection :

TotalTradeIf = Application.WorksheetFunction.DSum(BaseDonneesJ, 6,
criteresJ)

Tout se passe bien mais dans un seul cas, le résultat renvoie la somme
totale des items contenant la lettre constituant le critère d'extraction.
Ce cas est celui ou le critère d'extraction se compose d'une SEULE LETTRE.
Pour illustrer : Contrat C : 1 item, Contrat CT : 1 item
Dans le premier cas (critère d'extraction = C) le resultat de la fonction
ci-dessus renvoie 2 (faux) items, dans le second cas (critère d'extraction
CT), le résultat renvoie 1 (vrai)

Je ne me souviens plus mais je crois qu'il existe des critères de
codification des critères pour ce cas précis permettant à la fonction de
renvoyer la bonne valeur.
Pour l'instant, les valeurs que j'indique dans les critères sont C et CT

Pouvez-vous m'aider ?

Merci d'avance








--
dan

4 réponses

Avatar
michdenis
Bonjour Dan,

essaie ceci dans ta cellule contenant le critère : ="=C"
et oui tu dois inscrire les 2 signes égaux.





"dan" a écrit dans le message de groupe de discussion :

Bonjour à tous,

J'utilise la fonction suivante pour compter un nombre total d'items dans ma
collection :

TotalTradeIf = Application.WorksheetFunction.DSum(BaseDonneesJ, 6,
criteresJ)

Tout se passe bien mais dans un seul cas, le résultat renvoie la somme
totale des items contenant la lettre constituant le critère d'extraction.
Ce cas est celui ou le critère d'extraction se compose d'une SEULE LETTRE.
Pour illustrer : Contrat C : 1 item, Contrat CT : 1 item
Dans le premier cas (critère d'extraction = C) le resultat de la fonction
ci-dessus renvoie 2 (faux) items, dans le second cas (critère d'extraction
CT), le résultat renvoie 1 (vrai)

Je ne me souviens plus mais je crois qu'il existe des critères de
codification des critères pour ce cas précis permettant à la fonction de
renvoyer la bonne valeur.
Pour l'instant, les valeurs que j'indique dans les critères sont C et CT

Pouvez-vous m'aider ?

Merci d'avance








--
dan
Avatar
dan
Malheureusement, ça ne marche toujours pas.
Peut être ne suis je pas doué pour l'écriture du code en vba, voiçi le code
que j'utilise :

test = """=" & LibIf & """"

Comment faire ?

Merci d'avance.

--
dan


"michdenis" a écrit :

Bonjour Dan,

essaie ceci dans ta cellule contenant le critère : ="=C"
et oui tu dois inscrire les 2 signes égaux.





"dan" a écrit dans le message de groupe de discussion :

Bonjour à tous,

J'utilise la fonction suivante pour compter un nombre total d'items dans ma
collection :

TotalTradeIf = Application.WorksheetFunction.DSum(BaseDonneesJ, 6,
criteresJ)

Tout se passe bien mais dans un seul cas, le résultat renvoie la somme
totale des items contenant la lettre constituant le critère d'extraction.
Ce cas est celui ou le critère d'extraction se compose d'une SEULE LETTRE.
Pour illustrer : Contrat C : 1 item, Contrat CT : 1 item
Dans le premier cas (critère d'extraction = C) le resultat de la fonction
ci-dessus renvoie 2 (faux) items, dans le second cas (critère d'extraction
CT), le résultat renvoie 1 (vrai)

Je ne me souviens plus mais je crois qu'il existe des critères de
codification des critères pour ce cas précis permettant à la fonction de
renvoyer la bonne valeur.
Pour l'instant, les valeurs que j'indique dans les critères sont C et CT

Pouvez-vous m'aider ?

Merci d'avance








--
dan



Avatar
michdenis
Pour faire fonctionner ta ligne de code, tu dois la modifier comme ceci :

"BaseDonneesJ" -> représente le nom de la plage nommée de ton tableau de données
"criteresJ" -> représente le nom de ta plage nommée des 2 cellules définissant ton critère

TotalTradeIf = Application.WorksheetFunction.DSum(Range("BaseDonneesJ"), 6,
Range("criteresJ"))

la zone de critère demande 2 cellules :
Exemple : en M1 -> l'étiquette de colonne de ta colonne où
se retrouve tes données : "c", "ct"
en M2 -> le critère -> ="=c"

Il y a d'autres fonctions comme "SommeProd()", "Somme.Si()" qui peuvent être utilisées
et qui ne demandent pas l'utilisation d'une plage de critère.

Exemple :
A2:A5 -> plage contenant tes données c , ct
B2:B6 -> plage à additionner
le deuxième paramètre représentant ton critère : "c"

x = [SUMIF(A2:A5,"c",B2:B5)]

C'est une méthode équivalente à l'autre mais elle permet
d'insérer des variables...

With Worksheets("Feuil1")
a = "SUMIF(" & .Name & "!" & Range("A2:A5").Address & _
",""c""," & .Name & "!" & .Range("B2:B5").Address & ")"
y = Evaluate(a)
End With

On pourrait faire la même chose avec sommeprod.




"dan" a écrit dans le message de groupe de discussion :

Malheureusement, ça ne marche toujours pas.
Peut être ne suis je pas doué pour l'écriture du code en vba, voiçi le code
que j'utilise :

test = """=" & LibIf & """"

Comment faire ?

Merci d'avance.

--
dan


"michdenis" a écrit :

Bonjour Dan,

essaie ceci dans ta cellule contenant le critère : ="=C"
et oui tu dois inscrire les 2 signes égaux.





"dan" a écrit dans le message de groupe de discussion :

Bonjour à tous,

J'utilise la fonction suivante pour compter un nombre total d'items dans ma
collection :

TotalTradeIf = Application.WorksheetFunction.DSum(BaseDonneesJ, 6,
criteresJ)

Tout se passe bien mais dans un seul cas, le résultat renvoie la somme
totale des items contenant la lettre constituant le critère d'extraction.
Ce cas est celui ou le critère d'extraction se compose d'une SEULE LETTRE.
Pour illustrer : Contrat C : 1 item, Contrat CT : 1 item
Dans le premier cas (critère d'extraction = C) le resultat de la fonction
ci-dessus renvoie 2 (faux) items, dans le second cas (critère d'extraction
CT), le résultat renvoie 1 (vrai)

Je ne me souviens plus mais je crois qu'il existe des critères de
codification des critères pour ce cas précis permettant à la fonction de
renvoyer la bonne valeur.
Pour l'instant, les valeurs que j'indique dans les critères sont C et CT

Pouvez-vous m'aider ?

Merci d'avance








--
dan



Avatar
LSteph
[lacell]= """=c"""

On 19 nov, 10:48, dan wrote:
Malheureusement, ça ne marche toujours pas.
Peut être ne suis je pas doué pour l'écriture du code en vba, voi çi le code
que j'utilise :

test = """=" & LibIf & """"

Comment faire ?

Merci d'avance.

--
dan

"michdenis" a écrit :



> Bonjour Dan,

> essaie ceci dans ta cellule contenant le critère :  ="=C"
> et oui tu dois inscrire les 2 signes égaux.

> "dan" a écrit dans le message de gro upe de discussion :
>
> Bonjour à tous,

> J'utilise la fonction suivante pour compter un nombre total d'items dan s ma
> collection :

>         TotalTradeIf = Application.WorksheetFunction.DSum(Bas eDonneesJ, 6,
> criteresJ)

> Tout se passe bien mais dans un seul cas, le résultat renvoie la somm e
> totale des items contenant la lettre constituant le critère d'extract ion.
> Ce cas est celui ou le critère d'extraction se compose d'une SEULE LE TTRE.
> Pour illustrer : Contrat C : 1 item, Contrat CT : 1 item
> Dans le premier cas (critère d'extraction = C) le resultat de la fo nction
> ci-dessus renvoie 2 (faux) items, dans le second cas (critère d'extra ction
> CT), le résultat renvoie 1 (vrai)

> Je ne me souviens plus mais je crois qu'il existe des critères de
> codification des critères pour ce cas précis permettant à la fonc tion de
> renvoyer la bonne valeur.
> Pour l'instant, les valeurs que j'indique dans les critères sont C et CT

> Pouvez-vous m'aider ?

> Merci d'avance

> --
> dan- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -