Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Fonction inscrivante

  • Initiateur de la discussion Initiateur de la discussion F2T
  • 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 !

F2T

XLDnaute Occasionnel
Bonjour,

je me demande, si il est possible qu'une fonction inscrive une donnée sur une
colonne adjacente a sa localisation.

Function STATUT()

If [A1] = [A3] Then
STATUT = "OK"
STATUT.Offset(0, 1).Value = "1"

End Function

Sous cette forme, cela ne fonctionne pas.
Toute idée bienvenue. 🙂🙂

Merci d'avance.

😎
 
Re : Fonction inscrivante

Bonsoir F2T,


Dans la cellule B1 saisir la formule : =statut(A1;C1)

Dans un module ordinaire la function suivante :

Function statut(x, y)
If x = y Then statut = 1
End Function

Le résultat est 1
 
Re : Fonction inscrivante

Bonsoir Cbernard,

je que cherche a faire, est que si la fonction se trouve en B1, la validation de la condition se trouve en C1.

Ex 😀ans mon explication si la fonction se trouve en E15 , la valeur 1 s'inscrive dans la cellule F15.

Merci, dsl pas facile a expliquer. Au cas ou si idée 🙂🙂
 
Re : Fonction inscrivante

Bonsoir

serait il possible de me dire pouquoi mettre une fonction dans une colonne est avoir son résultat dans une autre?
j'ai beau cherché à trouver une soultion mais....
 
Re : Fonction inscrivante

Bonjour,

C'est impossible.
Une fonction ne peut pas modifier son environnement (autre cellule, couleur,...), elle ne peut que retourner une valeur dans la cellule où elle est inscrite.

eric
 
Re : Fonction inscrivante

Bonsoir à tous
Un essai dans le classeur joint, avec une fonction matricielle personnalisée :
Code:
[COLOR="DarkSlateGray"][B]Function STATUT(r1, r2)
Dim tmp$(1 To 1, 1 To 2)
   If r1 = r2 Then
      tmp(1, 1) = "OK"
      tmp(1, 2) = "1"
   End If
   STATUT = tmp
End Function[/B][/COLOR]

La fonction =STATUT(cellule_1;cellule_2) étant matricielle, il faut la saisir comme telle :

Pour comparer A1 et B1, sélectionnez deux cellules voisines en ligne (par exemple D1:E1), écrivez la formule =STATUT(A1:B1) et validez par Ctrl Maj Entrée.

On peut ensuite recopier vers le bas.​
ROGER2327
#4047


Lundi 23 Phalle 137 (Lazare, gare, SQ)
16 Fructidor An CCXVIII
2010-W35-4T22:11:12Z
 

Pièces jointes

Dernière édition:
Re : Fonction inscrivante

Bonjour tout le monde,

A relire la 1ère demande :
Function STATUT()

If [A1] = [A3] Then
STATUT = "OK"
STATUT.Offset(0, 1).Value = "1"

End Function
Je me demande, avec ta fonction en B1, si une formule
=si(B1="OK";1;"")
ne serait pas la solution.
Peut-être fait également en vba sur un évènement change.

eric
 
- 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
5
Affichages
573
Réponses
5
Affichages
909
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…