Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

récupérer date via onglet suivant conditons

4 réponses
Avatar
j-pascal
Bonjour,

J'ai des onglets qui s'intitulent respectivement :
Janvier - Février - Mars - etc.

Je récupère leur nom dans une cellule avec :
'----
Function SheetName() As String
Application.Volatile
SheetName = Application.Caller.Parent.Name
End Function
'----

(ie) en A1 j'ai donc "Janvier"

Question :

Comment puis-je récupérer ce nom pour en faire une "vraie" date pour
une année donnée (càd : janvier 2009 ou 2010)?

Est-il possible que cette date corresponde au premier mercredi ou
vendredi du mois (suivant celle qui est la plus proche du début du
mois) ?

Résumé :

(supposons que nous soyons en 2009)
Si j'ai "Janvier" dans mon onglet, je souhaite récupérer "Ven 02" (sous
forme d'une date exploitable !) qui correspond au "vendredi 02/01/09".

Merci pour vos lumières,

JP

4 réponses

Avatar
Daniel.C
Bonjour.

Function SheetName() As Date
Application.Volatile
mois = Application.Caller.Parent.Name
SheetName = CDate("01/" & mois & "/" & Year(Date))
End Function

Mets la cellule au format "date"
Cordialement.
Daniel

Bonjour,

J'ai des onglets qui s'intitulent respectivement :
Janvier - Février - Mars - etc.

Je récupère leur nom dans une cellule avec :
'----
Function SheetName() As String
Application.Volatile
SheetName = Application.Caller.Parent.Name
End Function
'----

(ie) en A1 j'ai donc "Janvier"

Question :

Comment puis-je récupérer ce nom pour en faire une "vraie" date pour une
année donnée (càd : janvier 2009 ou 2010)?

Est-il possible que cette date corresponde au premier mercredi ou vendredi du
mois (suivant celle qui est la plus proche du début du mois) ?

Résumé :

(supposons que nous soyons en 2009)
Si j'ai "Janvier" dans mon onglet, je souhaite récupérer "Ven 02" (sous forme
d'une date exploitable !) qui correspond au "vendredi 02/01/09".

Merci pour vos lumières,

JP


Avatar
j-pascal
Bonjour Daniel et merci.
Est-il possible de remplacer le "01/" par le premier mercredi (ou
vendredi) du "mois" ?
JP
Bonjour.

Function SheetName() As Date
Application.Volatile
mois = Application.Caller.Parent.Name
SheetName = CDate("01/" & mois & "/" & Year(Date))
End Function

Mets la cellule au format "date"
Cordialement.
Daniel

Bonjour,

J'ai des onglets qui s'intitulent respectivement :
Janvier - Février - Mars - etc.

Je récupère leur nom dans une cellule avec :
'----
Function SheetName() As String
Application.Volatile
SheetName = Application.Caller.Parent.Name
End Function
'----

(ie) en A1 j'ai donc "Janvier"

Question :

Comment puis-je récupérer ce nom pour en faire une "vraie" date pour une
année donnée (càd : janvier 2009 ou 2010)?

Est-il possible que cette date corresponde au premier mercredi ou vendredi
du mois (suivant celle qui est la plus proche du début du mois) ?

Résumé :

(supposons que nous soyons en 2009)
Si j'ai "Janvier" dans mon onglet, je souhaite récupérer "Ven 02" (sous
forme d'une date exploitable !) qui correspond au "vendredi 02/01/09".

Merci pour vos lumières,

JP




Avatar
Daniel.C
Function SheetName() As Date
Dim Mois As String, Dat As Date
Application.Volatile
Mois = ActiveSheet.Name

Dat = CDate("01/" & Mois & "/" & Year(Date))
Select Case Application.Weekday(Dat)
Case 1
SheetName = Dat + 3
Case 2
SheetName = Dat + 2
Case 3
SheetName = Dat + 1
Case 4
SheetName = Dat
Case 5
SheetName = Dat + 1
Case 6
SheetName = Dat
Case 7
SheetName = Dat + 4
End Select
End Function

Daniel

Bonjour Daniel et merci.
Est-il possible de remplacer le "01/" par le premier mercredi (ou vendredi)
du "mois" ?
JP
Bonjour.

Function SheetName() As Date
Application.Volatile
mois = Application.Caller.Parent.Name
SheetName = CDate("01/" & mois & "/" & Year(Date))
End Function

Mets la cellule au format "date"
Cordialement.
Daniel

Bonjour,

J'ai des onglets qui s'intitulent respectivement :
Janvier - Février - Mars - etc.

Je récupère leur nom dans une cellule avec :
'----
Function SheetName() As String
Application.Volatile
SheetName = Application.Caller.Parent.Name
End Function
'----

(ie) en A1 j'ai donc "Janvier"

Question :

Comment puis-je récupérer ce nom pour en faire une "vraie" date pour une
année donnée (càd : janvier 2009 ou 2010)?

Est-il possible que cette date corresponde au premier mercredi ou vendredi
du mois (suivant celle qui est la plus proche du début du mois) ?

Résumé :

(supposons que nous soyons en 2009)
Si j'ai "Janvier" dans mon onglet, je souhaite récupérer "Ven 02" (sous
forme d'une date exploitable !) qui correspond au "vendredi 02/01/09".

Merci pour vos lumières,

JP






Avatar
j-pascal
Merci beaucoup Daniel, c'est vraiment parfait !
JP

Function SheetName() As Date
Dim Mois As String, Dat As Date
Application.Volatile
Mois = ActiveSheet.Name

Dat = CDate("01/" & Mois & "/" & Year(Date))
Select Case Application.Weekday(Dat)
Case 1
SheetName = Dat + 3
Case 2
SheetName = Dat + 2
Case 3
SheetName = Dat + 1
Case 4
SheetName = Dat
Case 5
SheetName = Dat + 1
Case 6
SheetName = Dat
Case 7
SheetName = Dat + 4
End Select
End Function

Daniel

Bonjour Daniel et merci.
Est-il possible de remplacer le "01/" par le premier mercredi (ou vendredi)
du "mois" ?
JP
Bonjour.

Function SheetName() As Date
Application.Volatile
mois = Application.Caller.Parent.Name
SheetName = CDate("01/" & mois & "/" & Year(Date))
End Function

Mets la cellule au format "date"
Cordialement.
Daniel

Bonjour,

J'ai des onglets qui s'intitulent respectivement :
Janvier - Février - Mars - etc.

Je récupère leur nom dans une cellule avec :
'----
Function SheetName() As String
Application.Volatile
SheetName = Application.Caller.Parent.Name
End Function
'----

(ie) en A1 j'ai donc "Janvier"

Question :

Comment puis-je récupérer ce nom pour en faire une "vraie" date pour une
année donnée (càd : janvier 2009 ou 2010)?

Est-il possible que cette date corresponde au premier mercredi ou
vendredi du mois (suivant celle qui est la plus proche du début du mois)
?

Résumé :

(supposons que nous soyons en 2009)
Si j'ai "Janvier" dans mon onglet, je souhaite récupérer "Ven 02" (sous
forme d'une date exploitable !) qui correspond au "vendredi 02/01/09".

Merci pour vos lumières,

JP