une date_une feuille

P

pphilippe

Guest
bonjour
je cherche à récupérer une adresse qui correspond à la fois à une feuille (inventaire) et à une date, mais je dois m'empetrer dans les formats
un peu comme si j'avais une feuille qui s'appelle : oct03
et que dans une autre feuille en
saisie en B2 : oct03
et en B3 je veux récupérer =indirect(B2!l2c2;faux)
Suis pas sur d'être clair, alors je glisse un exemple
merci d'avance
pphilippe
 

Pièces jointes

  • feuille_mois.zip
    2.8 KB · Affichages: 13
J

Jean-Marie

Guest
Bonsoir Philippe

Dans ta formule =INDIRECT(T(L1C)&"!l()c(2)";FAUX), la fonction n'est pas la bonne fonction à utiliser, pour récupérer pour transformer une date (numéro de série) en date texte, il faut utiliser la fonction TEXTE, T renvoie valeur. Si valeur ne fait pas référence à du texte, T renvoie du texte vide ("").

Le deuxième argument de la fonction TEXTE est équivalent au format employé dans le format de cellule.

TEXTE(L1C;"mmm-aa"), suffirait mais le nom de la feuille est "composée"
(espace, tiret ...), donc il est obligatoire d'utiliser le symbole ' en début et en fin de nom de feuille.

Ce qui donne la formule
=INDIRECT(TEXTE(L1C;"'mmm-aa'")&"!l()c(2)";FAUX)

Bonne soirée

@+Jean-Marie
 
P

pphilippe

Guest
bonsoir,
Je dois avoir encore quelques soucis avec les ' je pense
j'approche mais c'est pas encore çà
pphilippe
 

Pièces jointes

  • feuille_mois1.zip
    2.9 KB · Affichages: 12
  • feuille_mois1.zip
    2.9 KB · Affichages: 13
  • feuille_mois1.zip
    2.9 KB · Affichages: 12
J

Jean-Marie

Guest
Re...

Ce n'est pas dans le nom de la feuille que tu as un problème, il ce situe au niveau de l'utilisation des références de L1C1, écrire l()c(2), retourne le contenu de la cellule de la même ligne et de 2 colonne à droite.

Exemple : mettre ceci =L()c(2) ou LC(2) dans la cellule A1 retourne le contenu de la cellule C1,

Dans la gestion des références de cellules LIGNE/COLONNE, écrie L10C15 est identique à écrire une référence absolue $O$10, et L(-1)C(-1) ou L(1)C(1) ou L()C() ou L1C() ou L()C1 est identique à une référence relative en fonction de la cellule d'origine.

J'espère avoir répondu à ta question.

@+Jean-Marie
 
P

pphilippe

Guest
Quand Jean Marie le sage montre la lune, l'imbécile regarde le doigt ;-)

j'étais braqué sur la date et je ne voyais pas l'erreur dans les références relatives que je manipule pourtant pas trop mal
merci Jean Marie

Maintenant dans mon problème de base je veux extraire des renseignements variés ( comme dans l'exemple) et je voudrais utiliser SOMMEPROD
Y a t'il un moyen d'éviter de décrire les adresses sans utiliser INDIRECT qui me tire soucis à cause surtout du grand nombre de parenthèses qui induisent beaucoup d'erreur(s)
Serait il possible de simplifier la méthode ?
merci
pphilippe
 

Pièces jointes

  • feuille_mois1.zip
    3.2 KB · Affichages: 12
  • feuille_mois1.zip
    3.2 KB · Affichages: 10
  • feuille_mois1.zip
    3.2 KB · Affichages: 10
J

Jean-Marie

Guest
Bonsoir Philippe

Dans ta formule =SOMMEPROD((INDIRECT(TEXTE(L1C;"'mmmaa'")&"!l2c1";FAUX))*(INDIRECT(TEXTE(L1C;"'mmmaa'")&"!l2c1";FAUX)=LC(-2))), tu travail en mode LC, mais le fichier à basculer en mode de cellule A1, ce qui génère une erreur ce qui est normal.

Deuxième point, tu ne définis pas une plage de cellule mais une seule cellule, pour faire une somme dans ce mode, on écrit SOMME(C3).

=SOMME(INDIRECT(TEXTE(L1C;"'mmmaa'")&"!C3";FAUX)), fonctionne

Mais dans ton cas, ce n'est pas si simple, le problème la condition et sommeprod, il n'accepte pas la colonne entière, il faut déterminer une plage de cellule.

Voici la formule pour une plage de cellules

=SOMMEPROD(INDIRECT(TEXTE(L1C;"'mmmaa'")&"!l2C3:l100c3";FAUX)*(INDIRECT(TEXTE(L1C;"'mmmaa'")&"!l2C1:l100c1";FAUX)=LC(-2)))

Ton problème maintenant c'est le nombre de lignes variable dans les différentes feuilles.

Je te conseille de rester dans le mode A1.

Passe une bonne soirée Philippe.

@+Jean-Marie
 
P

pphilippe

Guest
merci pour tout Jean Marie !
j'ai de quoi gamberger pour un moment, je n'aurais pas pensé que la plage de cellule puisse "tenir" dans une seule formule INDIRECT.
J'essaie dès demain au boulot, bonne soirée
pphilippe
 

Discussions similaires

Statistiques des forums

Discussions
313 020
Messages
2 094 434
Membres
106 027
dernier inscrit
DonSparks