[VBA] Fonction matricielle excel
Résolu
mat
-
michel_m Messages postés 16602 Date d'inscription Statut Contributeur Dernière intervention -
michel_m Messages postés 16602 Date d'inscription Statut Contributeur Dernière intervention -
A voir également:
- [VBA] Fonction matricielle excel
- Fonction si et excel - Guide
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Fonction moyenne excel - Guide
- Déplacer colonne excel - Guide
4 réponses
Edit : NBVAL et non somme
=>
={NBVAL(SI('[REPORTING.xls]TEST'!$T:$T<> "";STXT('[REPORTING.xls]TEST!$O:$O;8;3)<4;))}
=>
={NBVAL(SI('[REPORTING.xls]TEST'!$T:$T<> "";STXT('[REPORTING.xls]TEST!$O:$O;8;3)<4;))}
J'ai essayé avec cette formule aussi :
Mais cela ne fonctionne pas non plus...
=SOMMEPROD((('[REPORTING.xls]TEST!$T:$T="SEMAINE 1")+('[REPORTING.xls]TEST!$T:$T="SEMAINE 2")+('[REPORTING.xls]TEST!$T:$T="SEMAINE 3")+('[REPORTING.xls]TEST!$T:$T="SEMAINE 11"))*('[REPORTING.xls]TEST!$O:$O<>""))
Mais cela ne fonctionne pas non plus...
Bonjour,
Les matricielles n'admettent pas les colonnes entières et en mettant par exemple T1:T65535 (XL<2007) ca risque d'^tre long: donc voir la hauteur maxi+extension possible dans le classeur source
On pourrait utilise SOMMEPROD
et si on tient à la matricielle
Au passage; pourquoi VBA dans le titre ?
Michel
Vous programmez en VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...(P. Fauconnier/dvp)
Les matricielles n'admettent pas les colonnes entières et en mettant par exemple T1:T65535 (XL<2007) ca risque d'^tre long: donc voir la hauteur maxi+extension possible dans le classeur source
On pourrait utilise SOMMEPROD
=SOMMEPROD((condition1)*(condition2)*1)
et si on tient à la matricielle
=SOMME(SI((condition1)*(condition2);1))
Au passage; pourquoi VBA dans le titre ?
Michel
Vous programmez en VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...(P. Fauconnier/dvp)
Pour le VBA dans le titre, je vais avouer que j'ai pas fait expres, c'est un réflexe, car je travail d'habitude avec VBA et non directement depuis excel.
Pourrais-tu m'éclairer sur le '*1' dans sommeprod, je ne comprends pas à quoi il sert.
J'ai essayé avec
pour traiter sur les 6000 premières lignes, mais cela ne m'affiche rien alors que je devrais trouver 17. Qu'est ce qui pose problème ?
Pourrais-tu m'éclairer sur le '*1' dans sommeprod, je ne comprends pas à quoi il sert.
J'ai essayé avec
=SOMMEPROD((('[REPORTING.xls]TEST!$T1:$T6000="SEMAINE 1")+('[REPORTING.xls]TEST!$T1:$T6000="SEMAINE 2")+('[REPORTING.xls]TEST!$T1:$T6000="SEMAINE 3")+('[REPORTING.xls]TEST!$T1:$T6000="SEMAINE 4"))*('[REPORTING.xls]TEST!$O1:$O6000<>"")*1)
pour traiter sur les 6000 premières lignes, mais cela ne m'affiche rien alors que je devrais trouver 17. Qu'est ce qui pose problème ?
Cergy est une erreur dans le copier coller que j'ai fait désolé, mais ça ne fonctionne toujours pas.
Quand au STXT, je veux bien l'utiliser mais il faut faire quelque chose de la forme [plage]=[quequechose] ? Dans ce cas là, comment je l'écris ?
De toute façon, même en écrivant en brut avec les 5 conditions, cela ne m'affiche rien, donc c'est qu'il ne trouve rien alors que manuellement je trouve 17...
Quand au STXT, je veux bien l'utiliser mais il faut faire quelque chose de la forme [plage]=[quequechose] ? Dans ce cas là, comment je l'écris ?
De toute façon, même en écrivant en brut avec les 5 conditions, cela ne m'affiche rien, donc c'est qu'il ne trouve rien alors que manuellement je trouve 17...