Stephane Mex
XLDnaute Nouveau
Bonjour,
Je cherche comment je pourrais récupérer une date dans une feuille pour qu'elle soit répété dans d'autres feuilles.
J'ai déjà une fonction VBA qui me permet de mettre à jour mes dates de diffusion. Le problème c'est que ma planification d'émission est hebdomadaire et certains programmes sont bi-mensuels ou mensuels ...
Pour tous les programmes hebdomadaires aucun soucis, Date de première diff - nombres de jours et c'est bon. Pour les autres j'aimerais ne renseigner la date que pour la première diff et qu'elle soit répercuté lors des rediffusions.
Voici la fonction utilisée pour le moment :
La seconde partie avec les IF permet de dire que à partir de 17:30 il ne s'agit plus de rediffusion mais de la tranche horaire de direct ou premières diffusion.
J'envisageais d'ajouter un Else If "Nom de l'émission" = (et là justement je ne sais pas comment aller chercher cette date de première diffusion)
La solution de dire = "cellule lambda" ne fonctionne pas car sil il y a des modifications avec des ajouts de ligne le num de la cellule risque de changer ...
Je ne suis pas sûr d'être très clair mais je suis a disposition pour toute précision ou explication, Le fichier étant trop volumineux pour être partagé en PJ vous le trouverez ici :
GRILLE STANDARD copie.xlsm
En téléchargement : https://www.petit-fichier.fr/2022/09/26/grille-standard-copie/
Merci d'avance pour votre aide.
Je cherche comment je pourrais récupérer une date dans une feuille pour qu'elle soit répété dans d'autres feuilles.
J'ai déjà une fonction VBA qui me permet de mettre à jour mes dates de diffusion. Le problème c'est que ma planification d'émission est hebdomadaire et certains programmes sont bi-mensuels ou mensuels ...
Pour tous les programmes hebdomadaires aucun soucis, Date de première diff - nombres de jours et c'est bon. Pour les autres j'aimerais ne renseigner la date que pour la première diff et qu'elle soit répercuté lors des rediffusions.
Voici la fonction utilisée pour le moment :
VB:
Function MajDateLundi(ByVal Emission As String, ByVal JoursEnCours As Date, ByVal TimeIn As Date) As Variant
Dim Continuer As Boolean
Dim NbJours As Integer
Continuer = False
Select Case Emission
Case "Le Crosse Check Après Match", "Grand Genève à chaud", "Météo", "Le Journal" ' $F$1-1
Continuer = True
NbJours = 1
Case "Mégaphone" '$F$1-2
Continuer = True
NbJours = 2
Case "Geneva Show - Le grand entretien", "Un jour un domaine" ' $F$1-3
Continuer = True
NbJours = 3
Case "Cult." '$F$1-4
Continuer = True
NbJours = 4
Case "Le PoinG Part 01", "Le PoinG Part 02" '$F$1-5
Continuer = True
NbJours = 5
Case "Le génie des métiers", "L'agenda" '$F$1-6
Continuer = True
NbJours = 6
Case "Ca bouge à la maison", "Le Journal", "Les yeux dans les yeux", "Genève à chaud" ' $F$1"
Continuer = True
NbJours = 0
Case "Objectif terre" ' $F$1"
Continuer = True
NbJours = 7
Case "PUB", "Comblage / BA", "Programme court", "Capsule #1", "Capsule #2", "Capsule #3", "Capsule #4", "Capsule #5", "Capsule #6" ' " - ""
Continuer = False
ValeurDeRemplacement = "-"
Case Else
Continuer = False
ValeurDeRemplacement = "A remplir"
End Select
If Continuer = True Then
If TimeIn * 24 < 17.49 Then
MajDateLundi = CDate(JoursEnCours) - NbJours
Else
MajDateLundi = JoursEnCours
End If
Else
MajDateLundi = ValeurDeRemplacement
End If
La seconde partie avec les IF permet de dire que à partir de 17:30 il ne s'agit plus de rediffusion mais de la tranche horaire de direct ou premières diffusion.
J'envisageais d'ajouter un Else If "Nom de l'émission" = (et là justement je ne sais pas comment aller chercher cette date de première diffusion)
La solution de dire = "cellule lambda" ne fonctionne pas car sil il y a des modifications avec des ajouts de ligne le num de la cellule risque de changer ...
Je ne suis pas sûr d'être très clair mais je suis a disposition pour toute précision ou explication, Le fichier étant trop volumineux pour être partagé en PJ vous le trouverez ici :
GRILLE STANDARD copie.xlsm
En téléchargement : https://www.petit-fichier.fr/2022/09/26/grille-standard-copie/
Merci d'avance pour votre aide.