faire en sorte de transfomer un numéro de semaine en date

Bonjour

Voici une nouvelle question envoyée à l'aide du formulaire de demande d'aide (http://fr.libreoffice.org/get-help/poser-une-question/).
Si vous répondez, merci de penser à utiliser la fonction "répondre à tous" de votre logiciel de courrier électronique de façon que le demandeur reçoive une copie de votre réponse.

Email:: dominique.dudon@yahoo.fr
Sujet:: faire en sorte de transfomer un numéro de semaine en date
OS:: Windows 10
Version:: 6.0.x
Question:: Bonjour,

Je cherche à avoir dans une cellule des dates qui pourrait s'afficher automatiquement. J'essaye d'utiliser no.semaine cependant ça m'affiche une date avec 1900 comme année. Je ne trouve nul part d'infos à ce sujet.
Faut il paramétrer quelque chose avant de faire cette procédure ?
Y a t'il un truc à faire de particulier pour que la date s'affiche comme on le veut ?

Merci

Dominique

Pour nosemaine, il faut une date de référence que vous pouvez masquer ou
mettre dans une autre feuille si vous le désirez. Ensuite pour le format
d'affichage : format > date, vous pouvez personnaliser comme vous le
désirez.

Si vous répondez, merci de penser à utiliser la fonction "répondre à
tous" de votre logiciel de courrier électronique de façon que la liste
reçoive une copie de votre réponse.

Bonjour,

-----Message d'origine-----
De : demande_aide_fr@libreoffice.org
[mailto:demande_aide_fr@libreoffice.org]
Envoyé : mardi 3 juillet 2018 09:23
À : users@fr.libreoffice.org
Objet : [fr-users] faire en sorte de transfomer un numéro de semaine en
date

Bonjour

Email:: dominique.dudon@yahoo.fr
Sujet:: faire en sorte de transfomer un numéro de semaine en date
OS:: Windows 10
Version:: 6.0.x
Question:: Bonjour,

Je cherche à avoir dans une cellule des dates qui pourrait s'afficher
automatiquement. J'essaye d'utiliser no.semaine cependant ça m'affiche une
date avec 1900 comme année. Je ne trouve nul part d'infos à ce sujet.
Faut il paramétrer quelque chose avant de faire cette procédure ?
Y a t'il un truc à faire de particulier pour que la date s'affiche comme
on le veut ?

La fonction NO.SEMAINE ne donne pas une date à partir d'un no de semaine
mais l'inverse !

L'information existe bien, avec l'assistant fonction (fx), choisissez la
catégorie Date&Heure, vous aurez toutes les fonctions disponibles pour
construire une date en fonction de ce que vous souhaitez, avec l'explication
des arguments à entrer pour chaque fonction.

Nota: il me semble qu'il y a plus simple pour construire une date que de
partir du no de semaine, car il faut de toute façon indiquer quelque part
l'année et le jour, mais je ne connais pas votre besoin particulier.

Cordialement,

Michel

PS: Si vous répondez, pensez à utiliser la fonction "répondre à tous" de
votre logiciel de courrier électronique afin que la liste reçoive une copie
de votre réponse.

Bonjour Dominique

une date n'est qu'un chiffre. Plus précisément, une date correspond aux nombres de jours écoulés depuis la "date de référence" (par défaut 30/12/1899).

Tu peux le vérifier en saisissant la date d'aujourd'hui (ou la fonction aujourdhui()) et en désactivant le format date.

Par conséquent, quand tu indiques un numéro de semaine, et que tu veux le convertir en date, celui-ci ne peut que te renvoyer une date qui correspond à l'un des 52 premiers jours depuis le 30/12/1899 !

En revanche

- si ta cellule comporte déjà une date, tu peux en afficher automatiquement le numéro de semaine (format de cellule / Date / Format "WW"). Tu peux alors créer un format personnalisé pour afficher le numéro de semaine et la date (exemple format  "S"WW JJ/MM/AAAA pour afficher S27 03/07/2018).

-comme le propose Michel tu peux calculer une date. Tu dois définir pour cela le mois, le jour, l'année (fonction DATE) => tu pourras alors afficher la semaine comme tu le veux.

Quand tu as un numéro de semaine, Calc ne sait ni quel jour, ni quelle année prendre. Il te manque des éléments (si tu es né un samedi, on ne sait pas pour autant quand, c'est la même chose !)

Le principe est le même pour les heures, minutes, secondes, qui ne sont que des décimales d'une journée.

Cette page de l'aide sur les formats personnalisés pourrait t'aider : https://help.libreoffice.org/latest/fr/text/scalc/guide/format_value_userdef.html

et https://help.libreoffice.org/latest/fr/text/shared/01/05020301.html (voir la partie sur les dates)

Claire

Bonjour merci pour les réponses,

En fait mon but est de créer un fiche de paie. Je fais régulièrement de l'intérim et en inscrivant mes heures sur celle-ci, je pourrais savoir combien je serais payé. J'essaye donc de mettre en place des automatismes :

Sur une page, je vais mettre les dates et heures de travail.
Sur la fiche de paie, je voudrais que ces dates (par exemple du 1/02/2018 au 05/02/2018) soient mises automatiquement.

(/évidemment et pour répondre aux objections qu'il pourrait y avoir, je créerai un fichier par mois pour que les dates sur la fiche de paie ne changent pas à chaque fois que je les inscris...)/

Or avec ce que j'ai trouvé comme infos sur les pages d'aides diverses, je me retrouve avec des dates genre 04/01/1904...

Je suis très peu compétent en matière de tableur car ça demande d'avoir de la logique... c'est pourquoi parfois lorsque je lis une explication et que j'essaye de refaire l'exemple... ça ne fonctionne pas :slight_smile:

Merci en tout cas

Dominique

Bonjour Claire,

Merci de ta réponse, malheureusement, rien ne fonctionne de ce que vous (les différentes réponses que j'ai eu...) me dites. En effet, quand je veux mettre une année, ça me met toujours 1900, quand je veux mettre un mois avec (=MOIS(MAINTENANT())) ça me met janvier... Soit je ne suis pas doué, soit Libreoffice doit être paramétré pour que le logiciel prennent en compte la date du jour et ça... comment fait on si c'est ça qui est le problème ? Sinon, j'ai beau essayé.. .je n'y arrive pas . J'essaye par d'autres biais plus "simpliste", mais bon... j'aimerais bien découvrir la réponse à ce mystère lol

Merci en tout cas des explications que tu m'as fourni.

Dominique

Bonjour Dominique,

Pour les dates, ce n'est pas toujours évident. Pour des réponses à toutes vos questions, voir le site de Christian (une mine d'or) ici :
http://christianwtd.free.fr/index.php?rubrique=AstucesCalc01

Bonne lecture, cordialement, Philippe
Cordialement, Philippe
Si vous répondez, merci de penser à utiliser la fonction *Répondre à tous* de votre logiciel de courrier électronique de façon que la liste reçoive une copie de votre réponse.

Bonjour Dominique

avec tes 2 derniers messages, je devine un peu mieux ce qui se passe, mais peut-être pourrais-tu nous joindre ton début de fichier (sans les éléments perso) pour qu'on visualise mieux ce que tu veux obtenir?

Les pièces jointes ne passent pas dans la liste mais tu peux l'envoyer via framadrop https://framadrop.org/ et nous copier le lien qui te seras fourni.

pour =mois(maintenant()), il est probable que tu obtiennes janvier 1900 car ta cellule est formatée en date (hors en date, 7 est le 6/1/1900)

_Clic droit sur celle-ci puis "effacer le formatage direct", tu devrais obtenir le 7. _

Si maintenant tu veux toujours afficher le mois, en toute lettre ou en abrégé à partir d'une date, il faut aller un peu plus loin, tout dépend d'où tu pars et où tu veux aller...

Le problème est que si tu insères tes dates au fur et à mesure par un aujourdhui (ou un maintenant pour avoir l'heure), celles-ci seront automatiquement modifiées dès que tu rouvres le fichier.

Bref, il faut commencer par le début : comment récupères-tu tes heures et tes dates dans ce fichier ?

Ne te décourage pas, les dates, la première fois, c'est pas toujours évident, mais tu vas y arriver.

Claire

Bonjour,

Je mets le fichier en totalité que vous puissiez voir ce que je fais :

https://framadrop.org/r/0gAZcWQbdz#zC0QwxxUTIjqDEwP9+Cnp56nxeNFh75gUBFnp6xiXAM=

Il n'y a rien de perso dedans, ce ne sont que des chiffres :wink:

Comme peut-être vous pourriez le constater, j'ai récupérer le fichier de base sur ooreka. J'essaye de le transformer à ma sauce.

Les dates sont inscrites sur la feuille deux. Chaque fois que j'ai travaillé, je mettrai le nombre d'heures en face de la date en question. Il faudrait (dans l'idéal bien sur... va surement que je passe par pleins d'étapes avant :-)), chaque fois que je recréé un fichier lorsque je change de mois, il faudrait que les infos changent par une action simple à faire...

Il faudrait ensuite que sur la feuille 1 les dates changent en fonction de la feuille 2. exemple :

Première semaine de travail :

du 01 juin 2018 (c'est un vendredi) au 3 juin 2018 : il faudrait que ces dates là (à peu prêt sous cette forme) s'affichent automatiquement sur la feuille un à partir des infos de la feuille deux.

du 4 juin au 6 juin...

et ainsi de suite

Je n'explique pas tout ça pour qu'on fasse à ma place naturellement, j'explique juste pour que vous compreniez ma problèmatique :slight_smile:

Merci

Dominique

J'ai l'impression que ce que tu souhaites c'est afficher le début et la fin d'une période de type semaine.

Sachant que cette période tu la définis manuellement dans la feuille 2.

7 au 11 mai 2018 par exemple c'est ce que tu voudrais obtenir, avec pour ce mois ci 4 au 10 juillet 2018 ?

Claire

Je ne te joins pas le fichier de solution pour que tu puisses faire.

Il y a effectivement un action simple à faire pour un nouveau mois (et une de plus pour la nouvelle année)

tes difficultés viennent du fait que tu as besoin d'utiliser les fonctions et les formats de date, et que tu as un peu trop abusé des formats de date... (peut être ma faute !)

Feuille 2

Efface le formatage direct (clic droit sur les cellules concernées) des lignes 1 et 2

Il faut que tu aies de façon permanente l'année de référence et le mois. Ils vont être utilisés dans d'autres calculs, tu ne peux donc te contenter d'un formatage d'une cellule égale à aujourdhui.

Tu pourrais partir d'une cellule avec aujourdhui, mais dès que tu voudras consulter le fichier d'un mois passé, ça n'ira plus.

Tu peux soit,
- inscrire une date : le jour où tu commences ton fichier (1/7/2018) et faire ces calculs à partir de la date, mais ça va te demander de créer des formules plus complexes car il faudra toujours en extraire le mois et l'année.
- Noter :
     l'année, sans la formater en date ! la changer en janvier
    le mois, le changer chaque mois. Pour afficher ton mois malgré tout en toutes lettres, il y aura moyen !
Puis ensuite, en colonne A, tu ne peux définir tes jours de semaine arbitrairement.
Tu dois
=> Calculer la Date (fonction du même nom) à partir de la cellule qui contient l'année, celle qui contient le mois (ces deux là restent fixes !) et de la cellule qui contient le jour du mois.
Tu formates alors ces cellules (colonne A) pour afficher un jour de semaine.

Voilà pour ta première feuille.

Pour la seconde, ça dépend jusqu'où tu veux aller, avec des conditions on devrait pouvoir récupérer la date du lundi et celle du dimanche de la semaine x, ou sinon, il faut sélectionner la date de début et fin et les utiliser pour avoir ton libellé du "xx" au "yy" "mois".
Ce que tu as séparé en 3 colonnes jour, mois année doit être réuni dans une seule fonction.

Je te laisse voir pour la feuille 2 d'abord et on reparle ensuite de la feuille 1 si tu veux

Claire

Bonjour.
Pour que le tableur affiche les dates du premier jour et du dernier jour de la semaine 38 par exemple, il faut que les renseignements existent sur une autre feuille afin de les récupérer.

Jean-Michel PIERRE
Tél : 06.19.55.73.22

Bonjour Dominique

pour finir

je te joins une feuille2 un peu modifiée

https://framadrop.org/r/SiIU5qgTP9#8s3OwYerEA7B59htuVEUB1/ByjfcU+HJXKycrdiNeBQ=

- avec la fonction Date pour la première colonne, comme je te l'expliquais.

- Ensuite, pour arriver à tes fins sur les libellés de semaines, il faut que tu puisses calculer "automatiquement" les dates de début et fin de chaque semaine (c'est ce que je sous entendais dans mon message d'hier).

Cela part de plusieurs principes :

* Le nombre de jours dans le mois (fonction JOURSDANSMOIS)

* le jour de la semaine du 1er jour du mois ou plus exactement le nombre de jour de la première semaine (fonction JOURSEMAINE et quelques déductions)

*et de fait le nombre de semaine (du lundi au dimanche) dans le mois. Généralement 5 (dont une incomplète) sauf si le premier jour de février est un lundi..

*Et comme toute semaine entamée est nécessaire, et que les calculs automatiques de nombre de semaines entre 2 dates ne prennent pas en compte ce critère la fonction ARRONDI.SUP

=> à partir de là, tu peux calculer le début et la fin de chaque semaine (pour la dernière semaine, la fin est le dernier jour du mois..)

- De là, tu peux utiliser le 1er ou dernier jour pour calculer le numéro de semaine, et ainsi faire automatiquement la somme de tes heures par semaines.

- Enfin, tu peux alors utiliser la fonction TEXTE qui a pour but de convertir un nombre en texte en précisant son format pour afficher le libellé de ta semaine du "xx" au "yy" "mois"... sachant qu'une semaine peut n'avoir qu'un seul jour, comme ce mois-ci.

=> Tu as alors toutes tes données déjà agrégées par semaines. Le mieux serait d'utiliser des noms de cellules "plages ou expressions nommées" pour pouvoir les reporter aux bons endroits de ta feuille 1.

Tout ça devrait te faire franchir un grand pas dans la gestion des dates dans un tableur. Prends le temps de comprendre tout cela pour l'appliquer à ton rythme.

Claire

Bonjour,

Je n'ai pas donner de nouvelles, mais je n'ai pas trop eu le temps de m'occuper de mon affaire :wink: Je remercie chacun qui s'est impliqué (et surtout Claire qui m'a donné beaucoup de choses à comprendre).

Ceci dit... il me manque tellement de base que je n'ai pas encore compris grand chose à certaines formules, mais

je vais continuer à chercher car c'est très intéressant. Et si j'ai des questions, je n'hésiterai pas à vous solliciter.

Merci encore.

Dominique