samedi à samedi

Y compris Power BI, Power Query et toute autre question en lien avec Excel
Répondre
c
chti59xcel
Membre fidèle
Membre fidèle
Messages : 337
Inscrit le : 19 décembre 2007

Message par chti59xcel » 20 septembre 2016, 07:05

Bonjour,

j'aurai besoin d'une petite formule qui affiche la date d'un samedi à l'autre et qu'ensuite je puisse tirer cette formule en colonne pour fabriquer un calendrier.

D'avance, un grand merci, chti59xcel
Avatar du membre
mdo100
Membre dévoué
Membre dévoué
Messages : 924
Appréciations reçues : 39
Inscrit le : 25 mai 2013
Version d'Excel : 2010 FR

Message par mdo100 » 20 septembre 2016, 07:45

Bonjour chti59xcel, toutes et tous,

Si la date du premier samedi et en "A1", alors mettre en "A2":
=DATE(ANNEE(A1);MOIS(A1);JOUR(A1)+7)
Et tirer cers le bas.

Cordialement.
T
Theze
Passionné d'Excel
Passionné d'Excel
Messages : 4'019
Appréciations reçues : 306
Inscrit le : 26 janvier 2011
Version d'Excel : 2007/2019

Message par Theze » 20 septembre 2016, 07:55

Bonjour,

Je ne suis pas très fort dans les formules de date Excel donc, une première piste un peu tirée par les cheveux !
La date du premier samedi de l'année en A1 (02/01/2016), en A2 la formule ci-dessous :
=TEXTE(DATE(ANNEE($A$1);MOIS($A$1);JOUR($A$1));"jjjj jj/mm")
en B2 la formule ci-dessous que tu dois tirer jusqu'au dernier samedi de l'année si c'est ton choix (colonne BA) :
=TEXTE(DATE(ANNEE($A$1);MOIS($A$1);JOUR($A$1)+7*(COLONNE()-1));"jjjj jj/mm")
Il vaut mieux un qui sait que cent qui cherchent :wink:

Ce forum étant un lieu de partage, je n'accepte pas les messages privés !
J
JFL
Membre impliqué
Membre impliqué
Messages : 1'333
Inscrit le : 1 avril 2011
Version d'Excel : 2010 FR, 2013 FR

Message par JFL » 20 septembre 2016, 09:13

Bonjour,

Si l'année d'application est en A1

Et que le jour cherché peut s'exprimer par une valeur de 1 à 7 avec dimanche=1.......samedi = 7

Le 1er jour cherché de l'année sera déterminé par la formule suivante :
=DATE(A1;1;1)+SI(JOURSEM(DATE(A1;1;1))>C3;7-JOURSEM(DATE(A1;1;1))+C3;C3-JOURSEM(DATE(A1;1;1)))
avec en C3 la valeur du jour cherché soit ici 7.

La formule donnera :
=DATE(A1;1;1)+SI(JOURSEM(DATE(A1;1;1))>7;7-JOURSEM(DATE(A1;1;1))+7;7-JOURSEM(DATE(A1;1;1)))

Une fois ce premier jour déterminé le prochain jour sera déterminé en ajoutant 7 à la précédente date.

En espérant être assez explicite :D
Cordialement

JF
c
chti59xcel
Membre fidèle
Membre fidèle
Messages : 337
Inscrit le : 19 décembre 2007

Message par chti59xcel » 20 septembre 2016, 21:55

Ok, merci pour les formules, je vais essayer voir si cela fonctionne
cordialement, chti59xcel
Avatar du membre
AMIR
Membre dévoué
Membre dévoué
Messages : 748
Appréciations reçues : 7
Inscrit le : 19 janvier 2015
Version d'Excel : 2007

Message par AMIR » 21 septembre 2016, 00:10

Bonjour
Microsoft Excel enregistre les dates sous forme de numéros de série afin qu'elles puissent être utilisées dans des calculs. Par défaut, le 1er janvier 1900 correspond au numéro de série 1, et le 1er janvier 2008 correspond au numéro de série 39448 parce que 39 448 jours se sont écoulés depuis le 1er janvier 1900.
essayer ca :
DATE.xlsx
(19.07 Kio) Téléchargé 5 fois
M
MFerrand
Fanatique d'Excel
Fanatique d'Excel
Messages : 17'171
Appréciations reçues : 448
Inscrit le : 20 juillet 2015
Version d'Excel : 2010 FR

Message par MFerrand » 21 septembre 2016, 01:32

Bonjour,

Premier samedi de l'année : en A1=l'année.
=DATE(A1;1;1)+7-JOURSEM(DATE(A1;1;1))
Si A1=2016, la formule renvoie : 02/01/2016
Si A1=2017, la formule renvoie : 07/01/2017
...

Pour lister tous les samedis de l'année, faire une incrémentation à 7 à partir du 1er...

Pour le premier samedi d'un mois, même formule, en remplaçant la date du 1er janvier par celle du 1er du mois.

Premier samedi à partir d'une date quelconque : en A1 une date.
=A1+7-JOURSEM(A1))
Toujours la même formule en fait ! Si la date est un samedi, la date est renvoyée, sinon celle du samedi qui suit...

Cordialement.
M
MFerrand
Fanatique d'Excel
Fanatique d'Excel
Messages : 17'171
Appréciations reçues : 448
Inscrit le : 20 juillet 2015
Version d'Excel : 2010 FR

Message par MFerrand » 21 septembre 2016, 01:50

Amir, salut !

Une petite rectification de ton explication (au cas où...) : il s'est en fait écoulé 1 jour de moins à compter du 1er janvier 1900 (que le nombre indiqué par le numéro de série).
Parce que Excel comptabilise un 29 février 1900 qui n'a jamais existé, 1900 n'étant pas une année bissextile. Ce n'est pas vraiment une "erreur" de Microsoft, l'erreur est en fait imputable à Lotus123 avec qui Excel était en concurrence à ses débuts et Microsoft a reproduit ce bogue volontairement pour assurer la compatibilité avec son concurrent.
Il s'ensuit que le renvoi des jours de la semaine avant le 1er mars 1900 est faux dans Excel, qui considère le 1er janvier 1900 comme un dimanche alors qu'il s'agissait d'un lundi...

Ce qui n'est guère compréhensible, c'est que cette erreur n'a jamais été rectifiée par Microsoft.
Alors que VBA ne commet pas la même erreur : le jour 1 en VBA est le 31 décembre 1899 (et VBA ne reconnait pas le 29 février 1900 comme date valide).
De même VBA reconnait les dates avant 1900 (remonte jusqu'en l'an 100), alors que depuis l'origine Excel ne permet pas de remonter avant 1900, ce qui n'en fait pas un outil vraiment adéquat pour les généalogistes...

Cordialement.
Avatar du membre
AMIR
Membre dévoué
Membre dévoué
Messages : 748
Appréciations reçues : 7
Inscrit le : 19 janvier 2015
Version d'Excel : 2007

Message par AMIR » 21 septembre 2016, 12:47

bonjour
Merci MFerrand
Oui pour une date quelconque il suffit :
=A1+7-JOURSEM(A1) 
Répondre
  • Sujets similaires
    Réponses
    Vues
    Dernier message