Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel
Excel Forum d'entraide sur Excel. Vos questions sur les fonctions, formules, manipulations, et tout sujet qui ne trouve pas sa place dans un sous-forum.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/11/2010, 12h50   #1
Invité de passage
 
Inscription : novembre 2010
Messages : 4
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 4
Points : 2
Points : 2
Par défaut Formule matricielle conditionnelle

Bonjour,
Je cherche à extraire d'une table un vecteur qui ne reprend que les valeurs qui répondent certaines conditions. J'utilise une formules matricielles conditionnelles, ex:
{si((rangecontractref= ref1)*(rangeCFdateCf>=datejour);rangeCFdate:rangeCF)}

Cette formule renvoit une chaine de valeurs :
{41155.6725,52;FAUX.FAUX;41156.785,45;...}

Mon problème c'est que je voudrais que les occurences FAUX.FAUX ne figurent pas dans le vecteur, pour pouvoir directement l'utiliser dans un fonction VBA personnelle

Est ce qui vous auriez une solution?
snay73 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/11/2010, 13h34   #2
Candidat au titre de Membre du Club
 
Inscription : novembre 2010
Messages : 24
Détails du profil
Informations personnelles :
Âge : 22

Informations forums :
Inscription : novembre 2010
Messages : 24
Points : 14
Points : 14
Bonjour,
je ne suis pas sur de mon coup il doit surement y avoir mieux mais a tu essayé dans ta règle de si de mettre si( équation ; val vrai ; ="") le ="" correspondant a une cellule vide si la règle n'est pas vérifié.
p51 mustang est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/11/2010, 17h45   #3
Membre Expert
 
Inscription : novembre 2006
Messages : 1 464
Détails du profil
Informations personnelles :
Âge : 49

Informations forums :
Inscription : novembre 2006
Messages : 1 464
Points : 1 410
Points : 1 410
si tu dois l'integrer a une fonction vba, il te sera peut etre plus facile d'utiliser une fonction vba pour remplacer les faux par rien
Code :
1
2
3
4
5
6
7
8
Function vecteur()
u = "{41155.6725,52;FAUX.FAUX;41156.785,45;...}"
u = Replace(u, ";FAUX.FAUX", "")
MsgBox u
End Function
Sub voirvecteur()
MsgBox vecteur(u)
End Sub
alsimbad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2010, 13h35   #4
Invité de passage
 
Inscription : novembre 2010
Messages : 4
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 4
Points : 2
Points : 2
Meric à vous 2 pour vos réponses, mais l'idée est d'avoir dans excel une vecteur réduit aux seules couples de valeurs qui répondent aux deux critères. Ma tables fait près +/- 20.000 lignes pour max 20 lignes par contrats -> pour des raisons de vitesse de traitement je voudrais juste véhiculer un vecteur de 20 lignes pour chaque contrat...

Dans vosdeux propositions je garderais un vecteur de 20.000 lignes avec 19880 lignes "".""...
snay73 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/11/2010, 16h25   #5
Membre Expert
 
Inscription : novembre 2006
Messages : 1 464
Détails du profil
Informations personnelles :
Âge : 49

Informations forums :
Inscription : novembre 2006
Messages : 1 464
Points : 1 410
Points : 1 410
pour etre franc.....
ca n'as pas l'air bien dificile, ce que tu demande, mais tu ne dois pas poser la bonne question. nous, on ne sait pas
-ce que tu appelle un vecteur de 20 lignes
-ce que tu appelle 20000 ligne pour 20 lignes de contrat
-ce que tu appelle "véhiculer "un vecteur de 20 lignes
je pense que ta solution réside dans l'extraction de tes deux conditions et non pas dans la réponse, tu n'aurais ainsi pas le faux dans la réponses renvoyée par la fonction. mais a part ça, on ne comprend pas la question. du moins pour la question posée, la réponse est bonne, mais est ce vraiment la bonne question?
alsimbad est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h07.


 
 
 
 
Partenaires

Hébergement Web