Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

[ RESOLU ] Détecter des jours dans des cellules sous format date "jjj"

Garth69

XLDnaute Occasionnel
Bonsoir all !
Comme chaque soir ... Ma p'tite question !

Je dois effectuer une détection du contenu de cellules ( Au dessus de ma plage sélectionnée ... ) avec le code ci dessous :
Code:
If Selection.Cells(Selection.Columns.Count).Offset(-2, 0) = "ven" Then
Mon code devrait donc me renvoyer vers un formulaire adhoc, s'il détectait "ven" ( vendredi ... )

Hors le problème est que les cellules sur lesquelles je lance ma détection sont des dates en jjj ( Affichées en lun, mar, mer etc ... ), mon code ne détecte pas les jours sous cette forme, mais en dates jj/mm/aa .
Du coup ma détection ne marche pô ...

Une solution ?
 
Dernière édition:

Garth69

XLDnaute Occasionnel
Re : Détecter des jours( lun, mar, me, jeu ... ) dans des cellules sous format date "

K ... J'essaie de préparer un fichier ( Celui sur lequel je travaille est trop volumineux ... ) .



Voili ... Voilou ...
 

Pièces jointes

  • Exemple.xlsm
    15.3 KB · Affichages: 88
  • Exemple.xlsm
    15.3 KB · Affichages: 83
  • Exemple.xlsm
    15.3 KB · Affichages: 89
Dernière édition:

Garth69

XLDnaute Occasionnel
Re : Détecter des jours( lun, mar, me, jeu ... ) dans des cellules sous format date "

Dans mon fichier exemple je n'ai mis qu'une seule condition pour "ven" ...
Mais au final, il y'en aura 4 ( pour selon le jour détecté, choisir différents formulaires ... ), car mon projet porte sur un calendrier qui coure sur toute l'année ...
 

Victor21

XLDnaute Barbatruc
Re : Détecter des jours( lun, mar, me, jeu ... ) dans des cellules sous format date "

Re,

leparamètre" serait quoi dans ta formule ?
Sélectionnez WEEKDAY dans la fenêtre VBA, et cliquez sur F1.
Moi, j'ai la flemme.

@ Jean Marcel : Bonsoir, et merci pour ta sollicitude
 
Dernière édition:

Garth69

XLDnaute Occasionnel
Re : Détecter des jours( lun, mar, me, jeu ... ) dans des cellules sous format date "

Je dois être vraiment nul, ou cela ne répond pas à mon besoin ...
Car quelle que soit la modif du "paramètre" que j'apporte à ta formule, cela ne fonctionne pas !

Peut être n'as tu pas vu, mais j'ai glissé un fichier exemple en 3eme post ...
 

Staple1600

XLDnaute Barbatruc
Re : Détecter des jours( lun, mar, me, jeu ... ) dans des cellules sous format date "

Bonsoir à tous

Garth69
Essaies la macro ci-dessous et dis-moi si tu y vois un intérêt pour la suite de ta question ?
Code:
Sub a()
Dim p As Range, m$, s$, Leon_Reviens!
s = "Cellule active: " & vbCrLf: Set p = [N4]: p.Select
m = _
    IIf(Weekday(p, vbMonday) = 5, _
    "Le vendredi c'est raviolis!", _
    "La cellule seléctionnée n'est pas un vendredi")
MsgBox s & p.Address & vbCrLf & m, vbInformation, "Hommage à Léon"
Set p = [IV65536]
p.Select
m = _
    IIf(Weekday(p, vbMonday) = 5, _
    "Le vendredi c'est raviolis!", _
    "La cellule seléctionnée n'est pas un vendredi")
MsgBox s & p.Address & vbCrLf & m, vbInformation, "Hommage à Léon bis"
Leon_Reviens! = MsgBox("Une fois qu'on sait si la cellule est un vendredi, on réchauffe les raviolis ?", vbYesNoCancel)
[N4].Select
End Sub
EDITION: Bonsoir Jean-Marcel, désolé pour la collision
 
Dernière édition:

Garth69

XLDnaute Occasionnel
Re : Détecter des jours( lun, mar, me, jeu ... ) dans des cellules sous format date "

Ok ... Jean Marcel c'est exactement cela ... Merci beaucoup !
Et cela marche pour n'importe quel jour de la semaine, en modifiant "lenombre" ( Pour reprendre la formule de Victor21 ) ... Je viens d'essayer !

Mais je ne comprends toujours pas à quoi correspond "leparamètre" , en l'occurence "2" ...


@Staple1600 ... Je jetterai aussi un oeil a ton code ( beaucoup plus chargé ), pour essayer de bien cerner les différentes options offertes par weekday .
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : Détecter des jours( lun, mar, me, jeu ... ) dans des cellules sous format date "

Re

Garth69
La touche F1 est ton amie pour la vie (comme les 4Zamis l'étaient zaussi)

Ci dessous extrait de l'aide de VBA

PS: Ma macro précédente est à usage humoristique mais tout de même illustrative.
 
Dernière édition:

Garth69

XLDnaute Occasionnel
Re : Détecter des jours( lun, mar, me, jeu ... ) dans des cellules sous format date "

Merci de cet éclairage ...

Don, si j'ai bien tout compris :
Code:
weekday(Selection.Cells(Selection.Columns.Count).O ffset(-2, 0),leparamètre)=lenombre then

leparamètre = firstdayofweek = Le choix du jour du début de semaine
Pas indispensable donc, si je choisis de conserver le jour de début de semaine par défaut , qui serait Dimanche ...


J'pas encore bien pris l'coup pour F1 ( et quand j'y pense, ca reste souvent incompréhensible pour mon niveau de pratique ... )
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : Détecter des jours( lun, mar, me, jeu ... ) dans des cellules sous format date "

Re


C'est toi qui choises, Garth69 quand ta semaine commence.

Mais dans ma demeure, la semaine commence le lundi.
Le dimanche c'est la semaine dernière.

PS: Si ta pièce jointe était plus étoffée , on comprendrait mieux ce que tu cherches à faire, non ?
Ou est le formulaire dont tu parlais précédemment ?

[humour affligeant]
PS: Ma demeure demeure en France, et dans mon pays , Monsieur, la semaine n'a jamais commencé le dimanche, même en Sarkozie.
[/humour affligeant]

EDITION: Bonsoir Victor21, tu es bien d'accord, chez nous, la semaine commence le lundi.
 
Dernière édition:

Victor21

XLDnaute Barbatruc
Re : Détecter des jours( lun, mar, me, jeu ... ) dans des cellules sous format date "

Re,

( et quand j'y pense, ca reste souvent incompréhensible pour mon niveau de pratique ... )
Mais quand j'y pense, ça reste souvent pratique pour améliorer mon niveau quand c'est incompréhensible.

PS : Bonsoir, JM
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…