Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > Business Objects > SDK
SDK Forum d'entraide pour la programmation des outils BO par des API (VBA, ASP, Java)
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 21/05/2007, 18h18   #1
Membre régulier
 
Inscription : novembre 2006
Messages : 84
Détails du profil
Informations forums :
Inscription : novembre 2006
Messages : 84
Points : 83
Points : 83
Par défaut [VBA]Utiliser "Où" avec une variable

j'ai un tableau avec ce genre de formule :

=Somme(<Montant>Où (<Année>=2007))

cela fonctionne très bien pour cette année, mais l'année prochaine ce ne sera plus bon.

j'ai voulu mettre :

=Somme(<Montant>Où (<Année>=Année(DateCourante()))) et là j'ai l'erreur DMB0007 et je n'arrive pas à contourner cette erreur !!

avez vous une idée ??
jj bzh est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/05/2007, 10h19   #2
Nouveau Membre du Club
 
Inscription : avril 2003
Messages : 71
Détails du profil
Informations forums :
Inscription : avril 2003
Messages : 71
Points : 36
Points : 36
Il me semble (mais à confirmer) que la variable Où ne s'utilise que avec la syntaxe :
Où indicateur = constante
Du coup quand on a uns syntaxe du genre
Où indicateur = fonction ça fonctionne pas
Je m'étais galérée pas mal sur ce fameux "Où" pour finalement ne pas l'utiliser
coucou_tt_le_monde est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/05/2007, 17h11   #3
Membre du Club
 
Inscription : août 2006
Messages : 73
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 73
Points : 57
Points : 57
Bonjour,

Effectivement, "Où" ne fonctionne qu'avec une constante, mais cet opérateur est incontournable pour effectuer des comparatifs Année / Année-1.

La solution se trouve dans VBA, il faut reconstruire la formule avec quelques lignes de code qui seront déclanchées par l'évènement "AfterRefresh" du document.

Le principe consiste à récupérer la valeur de l'année (en général passée en invite dans ce type de document) puis en déclarant des variables objet de type "DocumentVariable" et en utilisant leur propriété "Formula" .

J'ai beaucoup de tableaux qui fonctionnent sur ce principe et ça marche nickel, à chaque changement de période je ne me pose plus de question, tout est automatique.

Cordialement

Sergio
Sergio63 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/05/2007, 17h25   #4
Membre régulier
 
Inscription : novembre 2006
Messages : 84
Détails du profil
Informations forums :
Inscription : novembre 2006
Messages : 84
Points : 83
Points : 83
je ne suis pas encore un grand spécialiste du vba dans bo mais je vais essayer ta solution.

a suivre ...
jj bzh est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h12.


 
 
 
 
Partenaires

Hébergement Web