• Initiateur de la discussion Initiateur de la discussion tiow
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

tiow

XLDnaute Nouveau
Bonjour à tous,

Je me tourne vers vous pour un problème que je ne comprends pas. Je vais quand même tenter de vous l'exposer.

Je voudrais stocker un numéro de semaine dans une variable que je calcule de la manière suivante:
Code:
Evaluate("INT(MOD(INT((F48-2)/7)+0.6,52+5/28))+1")
La cellule F48 contient 04/02/2008 donc la formule ci dessus me renvoie bien 6.

Mon problème survient quand je remplace F48 par Cells(6,48) dans ce cas j'obtient l'erreur 2015.
Sur le site de microsoft il est expliqué que cela peut survenir du fait que mon année n'est pas à 4 chiffres ou d'autre problème mais mon soucis est que F48 ou Cells(6,48) c'est la même chose ...

De plus je souhaite utilisé la syntaxe Cells(,) pour pouvoir utilisé des variable pour les lignes.

Je vous joint un fichier avec quelques test,

Merci de votre aide,
tiow
 

Pièces jointes

Re : Evaluate en vba

Bonjour Tiow,

En fait, dans les tests 2 et 3 tu mélanges le language vba au language excel, et donc excel trouve la syntaxe bizarre. L'introduction d'une variable vba dans la formule excel dans la formule evaluate n'est pas compatible.
Regardes l'aide qui, pour une fois, est bien expliquée.

Ne sachant pas ce que tu veux faire, tu devras choisir entièrement vba, soit formules du tableur.

Seul le test1 est adequat.

Gruick
 
Re : Evaluate en vba

Hello PierreJean

Trop fort, les guillemets, je n'ai pas cherché plus loin que le bout de mon groin....

Mais je pense, si Tiow fait un programme en vba, la fonction evaluate n'est pas indispensable.

A plus,

Gruick
 
Dernière édition:
Re : Evaluate en vba

Re

Parce que je suis meilleur (lol !!!)

Plus serieusement:

Le parametre d' EVALUATE doit etre un string
A partir de la il sufit de reconstituer la formulation telle qu'elle serait mentionnée dans la formule
C'est pour cela qu'a l'emplacement ou il y avait A1 j'ai mis Cells(1,1).Address(0,0) qui vaut "A1"
 
Re : Evaluate en vba

re,

Honte à moi,
La fonction modulo du vba est moins puissante que celle du tableur, elle ne prend en compte que les entiers. J'ai appris quelque chose !
C'est donc la formule du génial PierreJean qu'il faudra utiliser.

Gruick
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
12
Affichages
467
  • Question Question
Microsoft 365 Erreur TCD
Réponses
5
Affichages
467
Réponses
15
Affichages
1 K
Retour