Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

adresse cellule utilisation de fonction

5 réponses
Avatar
highvalue.fr
bjr,

Je ne trouve pas la réponse à cette question, (probablement élémentaire
mais...)

Dans XL 2000 (je sais çà date) je définis une fonction personnalisée,
appelons là MaFonction, (sans parametre).

à divers endroit de ma feuille de calcul j'ai des formules utilisant
MaFonction()

comment récupérer dans le code de MaFonction la cellule dans laquelle elle
est mise en oeuvre ? (mettons que j'ai besoin du numéro de ligne de cette
cellule)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
NB

1/ Je ne peux pas naturellement pas utiliser ActiveCell.xxx

2/ J'ai une solution de rechange, grosso modo, redefinir ma fonction avec 1
paramètre et écrire la formule :
= Mafonction(Ligne()) mais çà ne me satisfait pas, au moins
intelectuellement.

Merci

5 réponses

Avatar
Daniel.C
> 1/ Je ne peux pas naturellement pas utiliser ActiveCell.xxx



Bonjour.
Et pourquoi pas ? à moins de rentrer la fonction en bloc dans une plage de
cellules...
Tu peux aussi mettre :
Evaluate("ROW()")
avec les mêmes restrictions.

Cordialement.
Daniel
Avatar
Daniel.C
> 1/ Je ne peux pas naturellement pas utiliser ActiveCell.xxx



Bonjour.
Et pourquoi pas ? à moins de rentrer la fonction en bloc dans une plage de
cellules...
Tu peux aussi mettre :
Evaluate("ROW()")

Cordialement.
Daniel
Avatar
highvalue.fr
Daniel.C wrote:
1/ Je ne peux pas naturellement pas utiliser ActiveCell.xxx



Bonjour.
Et pourquoi pas ? à moins de rentrer la fonction en bloc dans une
plage de cellules...
Tu peux aussi mettre :
Evaluate("ROW()")
avec les mêmes restrictions.

Cordialement.
Daniel



d'abord, merci.

mais çà ne marche pas. La question est donc relancée.

Ma fonction intervient effectivement dans des formules de nombreuses
cellules de mon tableau. La notion même de ActiveCell n'a pas de sens dans
mon cas.

par exemple, dans les cellules C5 D7 E18 j'ai des formules faisant appel à
MaFonction.

J'ai besoin que MaFonction, tienne comptes des emplacements de chaque
cellule utilisant MaFonction.

Mon idée d'utiliser dans la cellule la formule
=MaFonction(Ligne(),Colonne()) fonctionne bien. Je voudrais me passer des
paramètre.

merci
Avatar
Daniel.C
Tu n'as pas réppondu en ce qui concerne :
Evaluate("ROW()") :

Function MaFonction()
MaFonction = Evaluate("ROW()")
End Function
retourne le numéro de ligne
--
Cordialement.
Daniel
"highvalue.fr" a écrit dans le message de
news: 48ed0ac8$0$32185$
Daniel.C wrote:
1/ Je ne peux pas naturellement pas utiliser ActiveCell.xxx



Bonjour.
Et pourquoi pas ? à moins de rentrer la fonction en bloc dans une
plage de cellules...
Tu peux aussi mettre :
Evaluate("ROW()")
avec les mêmes restrictions.

Cordialement.
Daniel



d'abord, merci.

mais çà ne marche pas. La question est donc relancée.

Ma fonction intervient effectivement dans des formules de nombreuses
cellules de mon tableau. La notion même de ActiveCell n'a pas de sens dans
mon cas.

par exemple, dans les cellules C5 D7 E18 j'ai des formules faisant appel à
MaFonction.

J'ai besoin que MaFonction, tienne comptes des emplacements de chaque
cellule utilisant MaFonction.

Mon idée d'utiliser dans la cellule la formule
=MaFonction(Ligne(),Colonne()) fonctionne bien. Je voudrais me passer des
paramètre.

merci



Avatar
highvalue.fr
Daniel.C wrote:
Tu n'as pas réppondu en ce qui concerne :
Evaluate("ROW()") :

Function MaFonction()
MaFonction = Evaluate("ROW()")
End Function



effectivement sous cette forme, çà fonctionne.

j'ai juste un Pb de type de variable maintenant.

si je fais
MaFonction = Evaluate("ROW()")
MaFonction = Evaluate("COLUMN()") çà marche aussi

L = Evaluate("ROW()")
MaFonction = L
c'est ok

L= Evaluate("ROW()")
C = Evaluate("COLUMN()")

MaFonction=L*C me retourne une erreur.c'est ce qui m'a trompé dans mon test
initial.
Je vais me battre un peu avec les types.

en tout cas, merci.

ff