Nom de fonction perso forcé en minuscules

tango

XLDnaute Nouveau
Bonjour,

Je suis sous Excel XP.
J'ai écrit une fonction perso simple :

Function TX_M(marge, cptx, nbj, nbjcumu)
TX_M = marge / cptx * nbjcumu / nbj * 100
End Function

Mais quand je l'appelle, le nom de la fonction est forcé en minuscules :
=tx_m(100, 1000, 30, 365)

Tout marche bien, sauf que sur les postes de ma société restés sous Excel 97, cela provoque un blocage à l'exéc avec le progiciel (ORACLE Express) que j'utilise.

Quelqu'un saurait il comment je peux appeler ma fonction en majuscules :
=TX_M(100, 1000, 30, 365)

De la même façon que l'appel des fonctions standard d'excel du genre =ARRONDI (12,34;0)

J'ai essayé Insertion / Fonctions / Fonctions personnalisées, mais c'est tjrs en minuscules
J'ai essayé Remplacer en respectant la casse, mais ca ne fait rien
J'ai aussi essayé de définir ma fonction en tx_m(marge, cptx, nbj, nbjcumu)... mais j'ai toujours le blocage.

Merci à vous
 
C

Compte Supprimé 979

Guest
Re : Nom de fonction perso forcé en minuscules

Salut Tango,

Je ne pense pas que le problème, vienne du fait que ta fonction soit en minuscule ou MAJUSCULE !

Je pencherai plutôt à une instruction dans ton code VBA :confused:

Pourrais-tu nous mettre ton code ?

A+
 

tango

XLDnaute Nouveau
Re : Nom de fonction perso forcé en minuscules

C'est très gentil à toi de me répondre. Le code me parait tout simple :

' Fonctions personnalisées de calculs liés aux taux de marge
'
Function TX_M(marge, cptx, nbj, nbjcumu)
' calcul du taux de marge
TX_M = marge / cptx * nbjcumu / nbj * 100
End Function
Function EFF_TX(vol1, vol2, tx1, tx2, nj1, nj2, njc1, njc2)
' calcul de l'effet taux
EFF_TX = (tx2 * nj2 / njc2 - tx1 * nj1 / njc1) / 100 * (vol2 + vol1) / 2
End Function
Function EFF_VOL(vol1, vol2, tx1, tx2, nj1, nj2, njc1, njc2)
' calcul de l'effet volume
EFF_VOL = (tx2 * nj2 / njc2 + tx1 * nj1 / njc1) / 200 * (vol2 - vol1)
End Function
 

tirex28

XLDnaute Occasionnel
Re : Nom de fonction perso forcé en minuscules

Bonsoir,

Petite astuce, pour que vos fonctions personnalisées s'affichent dans les feuilles de calcul en respectant la casse de leur déclaration dans VBE il suffit de leur affecter une catégorie de fonctions autre que personnalisée:

Code:
Sub OptionsDeFonctions()
    Application.MacroOptions _
                Macro:="DEMAIN", _
                Description:="Une breve description", _
                Category:=2 'Date et heure (F1 pour la liste)
End Sub

Function DEMAIN() As Long
    DEMAIN = Date + 1
End Function

Et au passage vous pouvez en profiter pour ajouter une description qui sera visible dans l'Assistant fonction et dans la boite de dialogue "Insérer une fonction"

Cordialement,

Tirex28/
 

mutzik

XLDnaute Barbatruc
Re : Nom de fonction perso forcé en minuscules

bonjour à toutes et tous

Tango, juste une petite précision, peux-tu me dire pourquoi tu passes par une fonction personnalisée alors que tes fonctions sont du calcul bête et méchant qu'excel sait faire nativement. il faut quand même savoir qu'une fonction personnalisée est beaucoup plus lente au calcul qu'un calcul dans un cellule.
Alors, si tu as une fonction, oui pour le fun, mais si beaucoup ...
 

tango

XLDnaute Nouveau
Re : Nom de fonction perso forcé en minuscules

Bjr au forum.
Et merci à tirex28 et mutzik.

Je suis tjrs impressionné que des XLDnautes prennent le temps de répondre aux messages et aux pb évoqués.
J'ai parfois voulu répondre à des questions du forum, mais en général, il y a une réponse + pertinente que la mienne. Ou bien je sèche.

Merci à tirex28 pour son astuce. Je vais l'essayer.

Pour mutzik, je suis d'accord que mes calculs sont bêtes et méchants.
Mais j'utilise chacun de ces calculs 200 à 300 fois dans mon tableur. Avec des paramètres qui ne sont pas tjrs au même endroit. C'est justement parce que je ne m'en tirais pas avec des calculs directs que j'ai créé ces fonctions. Mais je comprends ta remarque. Le temps d'exéc reste OK.
 

tango

XLDnaute Nouveau
Re : Nom de fonction perso forcé en minuscules

Bjr au forum et notamment à tirex28

Ben non, ça n'a pas réglé mon blocage qui est d'ailleurs peut être du à tout autre chose que la casse du nom de la fonction.

Quoiqu'il en soit, merci encore, car je cherchais justement comment on pouvait entrer une description de fonction perso.
 

Discussions similaires

Statistiques des forums

Discussions
312 683
Messages
2 090 905
Membres
104 693
dernier inscrit
azizou900