Excel ne retourne pas la valeur ''#valeur"
ibral
-
Mike-31 Messages postés 19572 Date d'inscription Statut Contributeur Dernière intervention -
Mike-31 Messages postés 19572 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je fais une substitution dans une cellule Y538 la formule ci-dessous:
=SUBSTITUE(SUBSTITUE(SUBSTITUE(GAUCHE(X538;CHERCHE("_";X538)-1);"[";"");"]";"");"_";"")
Je souhaite que si cette formule ne donne rien, qu'elle ne retourne pas la valeur ''#valeur" mais le contenu de la cellule X538.
Merci d'avance.
Je fais une substitution dans une cellule Y538 la formule ci-dessous:
=SUBSTITUE(SUBSTITUE(SUBSTITUE(GAUCHE(X538;CHERCHE("_";X538)-1);"[";"");"]";"");"_";"")
Je souhaite que si cette formule ne donne rien, qu'elle ne retourne pas la valeur ''#valeur" mais le contenu de la cellule X538.
Merci d'avance.
A voir également:
- Excel ne retourne pas la valeur ''#valeur"
- Liste déroulante excel - Guide
- Ecran retourne - Guide
- Word et excel gratuit - Guide
- Valeur relative et absolue - Forum Programmation
- Comment calculer la moyenne sur excel - Guide
10 réponses
Bonjour ibral,
Est-ce que la formule que je te proposais plus haut (post 4) résoud ton problème ?
=SI(ESTERREUR(SUBSTITUE(SUBSTITUE(SUBSTITUE(GAUCHE(X538;CHERCHE("_";X538)-1);"[";"");"]";"");"_";""));X538;SUBSTITUE(SUBSTITUE(SUBSTITUE(GAUCHE(X538;CHERCHE("_";X538)-1);"[";"");"]";"");"_";"")) SUBSTITUE(SUBSTITUE(SUBSTITUE(GAUCHE(X538;CHERCHE("_";X538)-1);"[";"");"]";"");"_";"")
Est-ce que la formule que je te proposais plus haut (post 4) résoud ton problème ?
=SI(ESTERREUR(SUBSTITUE(SUBSTITUE(SUBSTITUE(GAUCHE(X538;CHERCHE("_";X538)-1);"[";"");"]";"");"_";""));X538;SUBSTITUE(SUBSTITUE(SUBSTITUE(GAUCHE(X538;CHERCHE("_";X538)-1);"[";"");"]";"");"_";"")) SUBSTITUE(SUBSTITUE(SUBSTITUE(GAUCHE(X538;CHERCHE("_";X538)-1);"[";"");"]";"");"_";"")
Bonjour,
Je pense que tu peux t'en sortir avec la fonction ESTERREUR :
=SI(ESTERREUR(SUBT...);"";SUBT...)
SUBT... désigne ta fonction. Je pense qu'il est inutile de substituer _ puisque c'est le caractère qui te sert de séparateur dans ta fonction gauche, donc il est déjà supprimé.
Je pense que tu peux t'en sortir avec la fonction ESTERREUR :
=SI(ESTERREUR(SUBT...);"";SUBT...)
SUBT... désigne ta fonction. Je pense qu'il est inutile de substituer _ puisque c'est le caractère qui te sert de séparateur dans ta fonction gauche, donc il est déjà supprimé.
Bonjour
Si c'est le m^me problème qu'hier, cad, pour expliquer à Gord21 (bonjour), que tu veux extraire le premier mot d'une chaine du style
[xxxxxx]/[yyyy]+[zzzzzz] [wwwwwwwwww]
les mots étant toujours entre des crochets
te donne à coup sûr "xxxxxx" quelque soit le séparateur entre les mots entre crochets
le post d'hier pour Gord21
https://forums.commentcamarche.net/forum/affich-16512379-supriession-d-une-chaine-da-caractere-excel
Si c'est le m^me problème qu'hier, cad, pour expliquer à Gord21 (bonjour), que tu veux extraire le premier mot d'une chaine du style
[xxxxxx]/[yyyy]+[zzzzzz] [wwwwwwwwww]
les mots étant toujours entre des crochets
=SUBSTITUE(GAUCHE(D8;CHERCHE("]";D8)-1);"[";"")
te donne à coup sûr "xxxxxx" quelque soit le séparateur entre les mots entre crochets
le post d'hier pour Gord21
https://forums.commentcamarche.net/forum/affich-16512379-supriession-d-une-chaine-da-caractere-excel
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour Gord
En fait, la solution de Mike 31 (Salut, l'ancien) reprise par Ibral ne fonctionne que si le séparateur de mot entre crochets est l'underscore. Qu'il y ait qu'un seul mot ou un autre séparateur (au départ il écrivait un "/" comme séparation) une erreur est générée
explication pour Ibral:
la formule que je propose recherche ce qui est à gauche du premier ] donc, le caractère séparateur est indifférent
la fonction SUBSITUE enlève alors le premier [
c'est pour cela que j'ai souligné entre crochets
En fait, la solution de Mike 31 (Salut, l'ancien) reprise par Ibral ne fonctionne que si le séparateur de mot entre crochets est l'underscore. Qu'il y ait qu'un seul mot ou un autre séparateur (au départ il écrivait un "/" comme séparation) une erreur est générée
explication pour Ibral:
la formule que je propose recherche ce qui est à gauche du premier ] donc, le caractère séparateur est indifférent
la fonction SUBSITUE enlève alors le premier [
c'est pour cela que j'ai souligné entre crochets
merci a vous deux.
La valeur "#valeur" est générée quand il n'y a pas l'argument crochet trouvé, et c'est là ou ça bloque.
La valeur "#valeur" est générée quand il n'y a pas l'argument crochet trouvé, et c'est là ou ça bloque.
OUI, mais ca ne correspond pas du tout à ce que tu demandais dans ton premier message!
Désolé, je n'ai pas de boule de cristal et tu m'as fait perdre mon temps.
Désolé, je n'ai pas de boule de cristal et tu m'as fait perdre mon temps.
Désolé michel si je t'ai fait perdre ton temps, mais il me semble que mon message était assez explicite:
"si cette formule ne donne rien, qu'elle ne retourne pas la valeur ''#valeur" mais le contenu de la cellule X538"
"si cette formule ne donne rien, qu'elle ne retourne pas la valeur ''#valeur" mais le contenu de la cellule X538"
T"as Raison, Brenda
Je relis ta demande
..."Dans une collonne excel, je souhaite suprimer les crochets [ et ] et récupérer la chaine du premier entre crochet, pour compliquer le problème le nombre de caractère entre les crochets est variable exemple:
[toto]
[bonbon]
[bi*da-]
[tata]/[titi]"...
....
Je relis ta demande
..."Dans une collonne excel, je souhaite suprimer les crochets [ et ] et récupérer la chaine du premier entre crochet, pour compliquer le problème le nombre de caractère entre les crochets est variable exemple:
[toto]
[bonbon]
[bi*da-]
[tata]/[titi]"...
....
Salut tout le monde,
N’ayant pas de relance sur l'autre discussion, j'avais un peu décroché.
Je voudrais faire un rappel à Ibral, il est inutile et même fortement déconseillé d’ouvrir plusieurs discussions sur le même sujet.
Ensuite s’il veut avoir des propositions, il faudrait qu’il donne tous les éléments de son problème, au départ il s’agissait d’isoler la partie gauche d’une valeur définie par / et supprimer les entres crochet []
Il serait souhaitable de sa part qu’il donne des exemples de plusieurs valeurs exemple dans une cellule j’ai ça et voudrai ce résultat, dans cette cellule j’ai ça et voudrai ça etc …
Tout de même sans avoir encore tout compris de ce problème à rallonge cette formule qui peut être complété pour éviter le message d’erreur dans le cas de cellule source vide ou encore supprimer une autre occurrence
=SI(ESTERREUR(I1);SUBSTITUE(SUBSTITUE(A1;"[";"");"]";"");SUBSTITUE(SUBSTITUE(GAUCHE(A1;CHERCHE("/";A1)-1);"[";"");"]";""))
N’ayant pas de relance sur l'autre discussion, j'avais un peu décroché.
Je voudrais faire un rappel à Ibral, il est inutile et même fortement déconseillé d’ouvrir plusieurs discussions sur le même sujet.
Ensuite s’il veut avoir des propositions, il faudrait qu’il donne tous les éléments de son problème, au départ il s’agissait d’isoler la partie gauche d’une valeur définie par / et supprimer les entres crochet []
Il serait souhaitable de sa part qu’il donne des exemples de plusieurs valeurs exemple dans une cellule j’ai ça et voudrai ce résultat, dans cette cellule j’ai ça et voudrai ça etc …
Tout de même sans avoir encore tout compris de ce problème à rallonge cette formule qui peut être complété pour éviter le message d’erreur dans le cas de cellule source vide ou encore supprimer une autre occurrence
=SI(ESTERREUR(I1);SUBSTITUE(SUBSTITUE(A1;"[";"");"]";"");SUBSTITUE(SUBSTITUE(GAUCHE(A1;CHERCHE("/";A1)-1);"[";"");"]";""))