christianwtd a écrit :
endive a écrit :
christianwtd a écrit :
endive a écrit :
Bonjours à tous,
Je cherche à créer une formule assez longue et répétitive.
C'est pour la création d'un agenda (c'est aussi pour m'exercer, je
pense qu'il y en à déjas des fait)
j'ai 24 colonne pour 24 h (de D à Z) nommer sur la ligne 5 (5h-6h
; 6h-7h...)
Les jours sont dans la colonne B (un jour par ligne)
Dans la colonne C je voudrais concatener les événements de la
journée avec leur horaire QUE s'il existe:
=CONCATENER(SI(D6=0;"";D$5);SI(D6=0;"";" ");D6;" /
";SI(E6=0;"";E$5);SI(E6=0;"";" ");E6;" / "; etc j'usqu'a Z
ça fonctionne mais la formule est assez fastidieuse à faire à la
main et pour des modifs aussi.
Vu que la chaîne SI(D6=0;"";D$5);SI(D6=0;"";" ");D6;" / "; reviens
24 fois dans la formule avec juste les numéros de colonne qui
change, il est peut être possible "d'automatiser" la formule.
J'ai trouvé la fonction adresse qui me donne dans la colonne voulue
les référence voulu. (en D1 et D2 pour D5 et D6; E1 et E2...)
donc je fait dans D3:
=concatener("SI(";D2;"=0;";"""";";"D$5;");SI(";D6;"=0;"";"
");";D6;";" ";";)
Ce qui ne marche absolument pas, les ; et les " ce mélangeant
j'imagine! :-!
Avez vous des idées pour faire des choses de ce genre?
Je cherche souvent des formules compliqués mais j'arrive peut à les
tester !
Merci
endive
Bonsoir,
CONCATENER est une fonction inutile (sauf compatibilité) qui peut se
remplacer par le symbole &, mais qui assemble des textes et non des
valeurs. Hors, je crois comprendre que tu cherches à faire des
opérations avec des heures.
Ensuite tu empiles des SI les uns dans les autres. Ce n'est pas
interdit, mais tu alourdis la formule à chaque SI supplémentaire.
Dernière précision, la fonction ADRESSE n'est réellement utile
qu'utilisée avec INDIRECT.
Enfin, je n'ai pas compris le but final. Peux-tu donner quelques
précisions afin d'essayer de t'aider.
Bon surf,
Christian
Oui depuis plusieurs essais je me suis rendu compte de la lourdeurs
de la formule voulu!
Pour être plus précis il y avais 2 questions:
1-Il y a t'il un autre moyen lors de la création d'une formule longue
(et lourde) de répété les parties presque semblable?
ex =SI(B2=0;0;B$1+B2)+SI(C2=0;0;C$1+C2)..........+SI(AA2=0;0;AA$1+AA2)
Oui, si c'est c'est uniquement des additions. Toutefois il est
peut-être utile de décomposer tes formules dans plusieurs cellules
dans une cellule : = SI(B2=0;0;B$1+B2)
dans une autre : = SI(C2=0;0;C$1+C2)
etc..., et au final la somme de ces cellules.
J'ai quand même réussi à faire cella mais de façon pas très pratique
(pour le moins!):
Dans une autre feuille (feuille2) j'ai décomposé ma formule ainsi :
En B1: SI(
En C1: B
En D1: 2=0;0;
En E1 : B
En F1: $1+
En G1: B
En H1: 2)+
j'ai ensuite remplis les colonnes en glissant les cellules B1,D1,F1
et H1 et rempli C1, E1 et G1 d'une suite alphabétique jusqu'à AA.
(J'ai enlevé le + en F26 car c'est la fin de la formule)
Puis en I1 =CONCATENER(A1;B1;C1;D1;E1;F1;G1;H1) Copier jusqu'à I26 .
Puis copier I1:I26 en J1:J26 en collage spécial sans les formules.
Puis en feuille1.A1 =(collage de J1:J26)
et j'ai bien ma formule mais qui n'est pas considéré comme tel!
Alors copié/collé dans un bloc-note et recopié/collé dans la cellule:
sa marche!!!
Bon j'ai passé l'après midi à ça, mais c'est pour apprendre!
Il doit peut être des moyens plus pratique pour faire cella?
Si j'ai bien compris, tu as créé une formule, ou plus exactement le
texte de la formule que tu as ensuite assemblé.
oui
Même si c'est du bricolage, ça prouve que tu te débrouilles puisque ça
marche. Mais j'en reviens à ce que je disais : si tu débutes avec Calc
(je me trompe ?),
Non mêmes si ça fait longtemps que je débute!
il ne faut pas hésiter à progresser en détaillant les formules quitte
à les réassembler par la suite, quand tout fonctionne.
2-La création d'un agenda:
En colonne B les dates
En colonne D à AA les 24 heures (avec en ligne 1 :0h-1h; 1h-2h;
......23h-24h)
En colonne C Le concatènage des événements et de leurs horaires* SI*
ils existent.
Si en K10 (soit le 5 février 7h-8h) "petit dej" et en R10 (5 fév
14h-15h) "Sieste"
Je veut en C10 : "7h-8h petit déj / 14h-15h Sieste"
J'ai donc avec la technique décrite fait:
=CONCATENER(SI(D10=0;"";D$1);SI(D10=0;"";" ");D10;" /
";SI(E10=0;"";E$1);SI(E10=0;"";" ");E10;" / "; etc jusqu'à AA
Essayes d'oublier CONCATENER.
si j'enlève CONCATENER il ne m'affiche que le résultat du 1er SI.
Ensuite en D10, qu'est ce qu'il y a dans la cellule ? Du texte ou une
valeur ? Je ne suis pas trop bien.
Non il s'agit d'un texte eventuel concernant le lundi 5 fevrier (ligne
10) de 00h à 1h (colonne D)
Si la cellule est vide la valeur est 0, si elle ne l'est pas la valeurs
est diferente de 0
d'ou: (SI(D10=0[si la cellule est vide];""[ne rien mettre];D$1[sinon
mettre la valeur de D$1 soit 0h-1h)
puis: (SI(D10=0[si la cellule est vide];""[ne rien mettre];" "[sinon
mettre lun espace])
puis: D10 [mettre le texte du 5 fev de 0h-1h, même s'il n'y a rien)
et j'avais oublié: (SI(D10=0[si la cellule est vide];""[ne rien
mettre];" / "[sinon mettre un / entouré de deux espace (ou à la ligne)])
La formule étant trop grande je l'ai scindé en 3 dans AB;AC et AD que
je re-concatène en C.
Sa marche mais il me semble que j'ai fait très compliqué?
Je voudrait remplacer le " / " de la formule par un retour à la ligne
dans cellule, est ce possible?
Le retour à la ligne ne marche pas, il faut passer par une macro.
(sauf option renvoi ligne automatique)
Dommage, il n'y a pas de caractère pour cella?
Sinon tant pis mais la lisibilité de l'agenda le rend inutilisable des
qu'il y a trop d'horaire prit ou que les textes sont long.
Merci
Endive
PS: J'ai laissez tombé la fonction ADRESSE :-!
Bon surf,
Christian
Merci de ton aide
Endive
--
Si tout se passe bien, c'est là qu'il faut commencer à s'inquiéter
(loi de Murphy)
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]