[Déplacé .Net --> VBA] afficher le min de plusieurs valeurs, problème de synthax
cs_anna81
Messages postés7Date d'inscriptionjeudi 26 février 2009StatutMembreDernière intervention31 mars 2010
-
30 mars 2010 à 14:50
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 2015
-
31 mars 2010 à 21:21
BONJOUR
Je n'arrive pas à exprimer le min parmis plusieurs valeurs, j'ai un problème de synthaxe.
Public Function Min()
Min(largeurpoteau - 4, 0.9 * hauteurutile)=m
End Function
???????
Le min sera ma variable m que je vais devoir utiliser dasn las suite des calculs.
Merci !!
A voir également:
[Déplacé .Net --> VBA] afficher le min de plusieurs valeurs, problème de synthax
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201578 30 mars 2010 à 20:25
Salut
Pas clair du tout.
Commence par respecter la syntaxe logique :
Si ta fonction doit renvoyer quelque chose, il faut forcemment qu'on voit, à l'intérieur, quelque chose du genre
Min = ...
Ensuite, tu ne peux pas appeler une fonction en l'utilisant elle-même à l'intérieur.
Ta fonction s'appelle MIN et tu appelles une commande, à l'intérieur, qui semble aussi s'appeler MIN !
... un doute m'habite : Serais-tu sous Excel ?
Et essayerais-tu d'utiliser la fonction interne Min de Excel ?
Si tel est le cas, tu ne peux pas appeler une de tes propres fonctions du même nom !
En plus, pour l'appeler, il faut faire référence à
Application.WorksheetFunction.Min(...
Tu veux simplement que ta fonction te renvoie une valeur issue de ton calcul ?
-1- Faire une déclaration propre de la fonction :
Si ta fonction doit renvoyer un chiffre à virgule, simple précision :
Public Function monMin() As Single
-2- Faire en sorte que ta fonction renvoie qqchose :
Public Function monMin() As Single
monMin = Application.WorksheetFunction.Min(largeurpoteau - 4, 0.9 * hauteurutile)
End Function
-3- Appeler ta fonction depuis ton code :
m = monMin
Par pitié, la prochaine fois :
- Choisis la bonne catégorie : ça influence beaucoup les réponses et évite de perdre du temps (et des nerfs)
- Soit plus précis dans tes explications. Là, ça va que je suis champion du monde de boule cristal 2005-2006, parce que sinon, impossible de déméler l'écheveau !
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
cs_anna81
Messages postés7Date d'inscriptionjeudi 26 février 2009StatutMembreDernière intervention31 mars 2010 31 mars 2010 à 15:54
Salut,
Tes explications sont très claires et très bien exposées, merci pour cette réponse.
je suis très touchée qu'une personne aussi confirmée que toi ait pris la peine de me répondre.D'autant que le statut de débutant n'est pas toujours facile à assumer...
Tu as bien cerné mon problème en dépit du fait que mon message n'était pas clair du tout.Par contre, je suis désolé mais je ne comprends pas en quoi je me suis trompée de catégorie, "Divers/débutant" bien que j'aurai du préciser que je travaillais sur excel.
J'avoue que je me suis très mal exprimée...Cela ne fait que 15 jours que je suis sur VB,et ce n'est pas évident. Je dois améliorer une feuille de calcul excel en intégrant du VB pour faciliter la lisibilité et la mise en place des équations.En fait je suis étudiante en génie civil et actuellement en stage de fin d'étude sauf que mon tuteur n'est jamais là ou bien trop débordé.
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201578 31 mars 2010 à 21:21
Ok Anna et merci pour ces compliments.
Pour la catégorie, regarde celle que j'ai remplacée : Il est important de bien le préciser car certaines solutions ne fonctionnent pas / ou ne fonctionnent qu'avec / un type de VB.
Dans ton cas, le VB de Excel est du VBA.