Opération trop complexe
Résolublux Messages postés 5032 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Une application développée sur mon PC et qui fonctionne bien refuse l'ouverture de certains états dans un autre PC et affiche le message "opération trop complexe"
Pourquoi cette différence de fonctionnement d'un PC à l'autre ?
Merci.
Windows / Chrome 124.0.0.0
9 réponses
-
Salut,
quel type d'application ?
-
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
bonjour,
soit les données ne sont pas identiques
soit l'état est mal conçu, et consomme inutilement trop de resources
-
Bonjour et merci pour l'intérêt que vous portez à mon activité,
Vous avez sans doute raison concernant la deuxième option ; la consommation inutile de trop de ressources. J'ai dans ma requête 3 champs avec fonctions IIF assez longues. J'aurais aimé les convertir en VBA mais je ne maîtrise ce domaine.
Y aurait-il une formule pour convertir ces requêtes en VBA ?
Voici ces 3 champs :
champ 1: VraiFaux([AK3]<2000000;[AK3]*0;VraiFaux([AK3]<5000000;2000000*0+([AK3]-2000000)*0;VraiFaux([AK3]<10000000;2000000*0+(5000000-2000000)*0+([AK3]-5000000)*0,01;VraiFaux([AK3]<50000000;2000000*0+(5000000-2000000)*0+(10000000-5000000)*0,01+([AK3]-10000000)*0,02;2000000*0+(5000000-2000000)*0+(10000000-5000000)*0,01+(50000000-10000000)*0,02+([AK3]-50000000)*0,05))))
Champ 2: VraiFaux([AV2]<2000000;[AV2]*0;VraiFaux([AV2]<5000000;2000000*0+([AV2]-2000000)*0,07;VraiFaux([AV2]<10000000;2000000*0+(5000000-2000000)*0,07+([AV2]-5000000)*0,1;VraiFaux([AV2]<50000000;2000000*0+(5000000-2000000)*0,07+(10000000-5000000)*0,1+([AV2]-10000000)*0,15;2000000*0+(5000000-2000000)*0,07+(10000000-5000000)*0,1+(50000000-10000000)*0,15+([AV2]-50000000)*0,2))))
Champ 3: VraiFaux([BA2]<2000000;[BA2]*0,1;VraiFaux([BA2]<5000000;2000000*0,1+([BA2]-2000000)*0,15;VraiFaux([BA2]<10000000;2000000*0,1+(5000000-2000000)*0,15+([BA2]-5000000)*0,2;VraiFaux([BA2]<50000000;2000000*0,1+(5000000-2000000)*0,15+(10000000-5000000)*0,2+([BA2]-10000000)*0,3;2000000*0,1+(5000000-2000000)*0,15+(10000000-5000000)*0,2+(50000000-10000000)*0,3+([BA2]-50000000)*0,4))))
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
peux-tu partager ton fichier?
-
-
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
Un exemple de fonction VBA pour le calcul de parv:
Public Function fparv(p) If p < 2000000 Then fparv = 0 * p Else If p < 5000000 Then fparv = 2000000 * 0 + (p - 2000000) * 0 Else If p < 10000000 Then fparv = 2000000 * 0 + (5000000 - 2000000) * 0 + (p - 5000000) * 0.01 Else If p < 50000000 Then fparv = 2000000 * 0 + (5000000 - 2000000) * 0 + (10000000 - 5000000) * 0.01 + (p - 10000000) * 0.02 Else fparv = 2000000 * 0 + (5000000 - 2000000) * 0 + (10000000 - 5000000) * 0.01 + (50000000 - 10000000) * 0.02 + (p - 50000000) * 0.05 End If End If End If End IfTu mets ce code dans un module, et, dans la requête, tu fais ainsi pour calculer parv:
fparv([AK2]) AS parV, -
Bonjour,
J'ai pu intégrer tous les codes dans les différents champs et ça marche parfaitement. Le seul bémol que j'ai rencontré était l'absence de "End function" à la fin du code que j'ai finalement inséré.
Je ne sais comment vous remercier de m'avoir guidé pas à pas jusqu'à ce que je puisse sortir l'épine de mon pied.
Grandement merci !