Menu

Ligne() dans une formule [Résolu]

Messages postés
146
Date d'inscription
lundi 15 octobre 2018
Statut
Membre
Dernière intervention
11 mai 2019
- - Dernière réponse : Vaucluse
Messages postés
23964
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
20 mai 2019
- 2 mai 2019 à 12:21
Bonjour,

J'ai la formule suivante dans un tableau, ligne 3:

SI(ESTTEXTE(C3);COLONNE(INDIRECT(C3 & 1));C3)

(Puis en ligne 4, remplacer C3 par C4...)


Je voudrais remplacer tous les C3 par "C"&ligne()
ça permettrait de faire des couper coller dans le tableau sans rien changer.

Donc en résumé, ma formule deviendrait

=SI(ESTTEXTE("C"(ligne());COLONNE(INDIRECT("C"(ligne()) & 1));("C"(ligne()))

Peut importe comment je met mes parenthèse j'ai toujours une erreur, je n'y arrive pas...
Si quelqu'un arrive à voir le truc...!

Merci beaucoup!

Configuration: Windows / Firefox 66.0
Afficher la suite 

Votre réponse

4 réponses

Messages postés
146
Date d'inscription
lundi 15 octobre 2018
Statut
Membre
Dernière intervention
11 mai 2019
1
0
Merci
SI(ESTTEXTE(C3);COLONNE(INDIRECT(C3 & 1));C3)

Si en C3, j'ai le chiffre 8 par exemple, la cellule renvoie 8.

Si en C3, j'ai la lettre C, INDIRECT(C3 & 1) renvoie "3" car "C" est la 3eme lettre de l'alphabet.

Cette formule fait que je peux entrer dans le tableau "de 1 à 5" ou "de A à E", c'est pareil.
Commenter la réponse de Anthelm
Messages postés
146
Date d'inscription
lundi 15 octobre 2018
Statut
Membre
Dernière intervention
11 mai 2019
1
0
Merci
Il manquait plein de "indirect" en fait, c'est bon.

=SI(ESTTEXTE(INDIRECT("C"&LIGNE()));COLONNE(INDIRECT(INDIRECT("C"&LIGNE()) & 1));(INDIRECT("C"&LIGNE())))
Commenter la réponse de Anthelm
Messages postés
23964
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
20 mai 2019
5788
0
Merci
Bonjour
si vous demandez à Excel si "C" est un texte, c'est du temps perdu c'est obligatoire avec les guillemets
essayez:
SI(ESTTEXTE(C3));COLONNE(INDIRECT("C" & LIGNE()));C3)
qui vous renverra C3 si il est numérique
.... et 3 si C3 ne l'est pas. Cette formule va s'incrémenter en C4 et ligne .etc..... en tirant vers le bas
mais en fait vous renverra toujours 3 quand C sera texte, car quand vous écrivez :
......INDIRECT(COLONNE("C"&LIGNE()))
vous faites référence à la colonne C, la troisième, quelque soit le n° de ligne qui suit et donc écrire ça ou
SI(ESTTEXTE(C3));3;C3)
revient au même!

alors il faudrait nous en dire plus sur ce que vous voulez faire et sur vos données de base?

à vous lire

crdlmnrt
Anthelm
Messages postés
146
Date d'inscription
lundi 15 octobre 2018
Statut
Membre
Dernière intervention
11 mai 2019
1 -
Le problème c'est que si C3 contient "A", je veux obtenir "1" en resultat. B=2, etc etc.
Anthelm
Messages postés
146
Date d'inscription
lundi 15 octobre 2018
Statut
Membre
Dernière intervention
11 mai 2019
1 -
("C"&LIGNE()) & 1) Tout est dans le "& 1" :)
Vaucluse
Messages postés
23964
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
20 mai 2019
5788 -
pour avoir 1 si C contient A, il ne faut pas avoir le C entre guillemets, mais renvoyer d'abord la valeur de C:
=COLONNE(INDIRECT(C3&1)). Le LIGNE() n'est pas utile pour avoir C4 en ligne 4 etc...
crdlmnt
Commenter la réponse de Vaucluse
Messages postés
146
Date d'inscription
lundi 15 octobre 2018
Statut
Membre
Dernière intervention
11 mai 2019
1
0
Merci
En fait c'est étrange mais colonne renvoie la position dans l'alphabet!...

=COLONNE(INDIRECT("Z"& 1)) renvoie 26. Peut importe ou la formule est placée.

Je ne comprends pas bien le fonctionnement de "Colonne"... mais ça marche.
Vaucluse
Messages postés
23964
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
20 mai 2019
5788 -
Bonjour
si vous voulez le N° de colonne où se trouve la formule, écrivez simplement: =COLONNE()
pour vopir ce qu'il se passe avec INDIRECT qui transforme un texte d'une cellule en adresse Excel, écrivez dans une celllule:
="Z"&1, la cellule vous renverra le texte Z1 et donc la formule complète vous renvoie le n° de colonne de Z1,.... ou de Z1000 ou de Zxxx, puisque cela ne concerne que le si vous écrivez "ZZ", vous aurez le N° de la colonne ZZ

bonne route
crdlmnt
Commenter la réponse de Anthelm