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

macro (condition)

  • Initiateur de la discussion Initiateur de la discussion chinel
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

chinel

XLDnaute Impliqué
Salut tout le monde !

je voudrais une macro qui s'active si nous sommes un mardi
si nous sommes mardi alors un msgbox s'ouvre et me demande si il y réunion
si je valide " oui " alors le mot "réunion" s'inscrit sur une autre feuille "sauvegarde planning" en cellule "B40"

j'espère que je suis clair, merci !
 
Re : macro (condition)

Bonsoir


Code:
Sub test()
J = Format(Date, "dddd")
If J = "mardi" Then
Sheets("sauvegarde planning").[B40] = _
IIf((MsgBox("Réunion ou pas ?", vbYesNo, "Question") = 6), "reunion", vbNullString)
Else
'
End If
End Sub

PS: Je voudrais, svp c'est plus facile à lire que
je voudrais une macro
 
Re : macro (condition)

Re


Désolé mais cela fonctionne (car j'ai testé avant de poster)

(En l'état vu qu'on est jeudi, le MsgBox risque pas de s'afficher 🙄 )

1) Il faut qu'il y ait une feuille nommée sauvegarde planning
(c'était ta demande non ?)

2) Il faut mettre ce code dans ThisWorkBook_Open()
pour qu'il s'exécute à l'ouverture de classeur.

3) Pour tester changer cette ligne
If J = "mardi" Then
en
If J = "jeudi" Then


Au cas ou
ajouter en début de code
Dim J$
 
Dernière édition:
Re : macro (condition)

merci mais je pense que le code n'est pas lié à la date du système

donc peut on lier avec une cellule de la feuille "Menu" cellule "F23"
style comme ça:

Private Sub auto_open()
cellule F23 de la feuille "Menu" (ou il y la date : format jeudi 30 avril 2009)
si celle-ci passe à un mardi de l'année alors la macro s'active
J = Format(Date, "dddd")
If J = "mardi" Then
si mardi alors mettre dans la feuille "Planning" en "B40" "Nous avons réunion !"
Sheets("planning").[B40] = _
IIf((MsgBox("Réunion ou pas ?", vbYesNo, "Question") = 6), "reunion", vbNullString)
Else
'
End If
End Sub

un grand merci de votre aide !!!
 
Re : macro (condition)

Re



Faudrait savoir !

une macro qui s'active si nous sommes un mardi

Si nous sommes un mardi
alors pour ton PC et sa date système aussi nous serons un mardi non ???

Il suffit de modifier ainsi
Code:
J=Format(Sheets("Menu").Range("F23"), "mmmm")

Ce qui revient au même non qu'avec le code précédent ???? 😕
car si F23 : =AUJOURDHUI()
alors F23 = Date
 
Dernière édition:
Re : macro (condition)

Salut,

autre proposition à tester :
Code:
Private Sub Workbook_Open()
  If Weekday(Sheets("Menu").[F23]) = 3 Then '3 pour un mardi
    Sheets("sauvegarde planning").[B4] = _
      IIf(MsgBox("", vbYesNo, "Une réunion est prévue ?") _
        = 6, "Nous avons réunion", "")
  End If
End Sub
 
Re : macro (condition)

Bonsoir chinel et vbacrumble, bonsoir à toutes et à tous 🙂


Désolé mais tu n'es pas assez explicite. Joins donc un fichier exemple (pour moi, cela signifie un fichier sans données confidentielles) afin que vbacrumble ou quelqu'un d'autre soit à même de te répondre correctement.

Pour moi, la 1ère réponse de vbacrumble correspond à la question du post initial. Sans fichier, impossible de faire mieux 🙄, sauf, peut-être de placer la procédure dans ThisWorkbook.

Pour être honnête et sans vouloir te blâmer, chinel, cela me "gave" de lire des demandes auxquelles une ou plusieurs personnes ont répondu (en fonction des données initiales) correctement, mais auxquelles on répond que le résultat n'est pas celui attendu car toutes les données à prendre en compte n'ont pas été dévoilées dès le premier post 😡.

Je veux que tu saches que je ne t'en veux pas personnellement et que tu n'es pas le seul visé, mais SVP, et je le dis à tous les intervenants demandeurs de solutions : donnez, à condition de ne pas demander une application complète, les informations complètes dont nous avons besoin pour résoudre votre problème (1 à la fois si possible).

vbacrumble a répondu à ta première demande. Si tu veux aller plus loin, ouvre un second fil de discussion pour ta seconde demande...

Par ailleurs, la procédure Private Sub auto_open() est à bannir et à remplacer par Private Sub Workbook_Open() que l'on trouve dans ThisWorkbook

@+

PS : ne te sens visé personnellement car cela va au-delà de ton post et concerne tous ceux (toutes celles) qui ne dévoilent qu'une infime partie de ce dont ils ont besoin. Je parle aussi de "ceusses" qui voudraient une application "clé en main" sans faire le moindre effort de conception, ne serait-ce qu'une trame du fichier qu'ils(qu'elles) souhaitent.

Voilà ! C'était mon "coup de gueule du jour" 🙂 😉 🙂 😉
 
Re : macro (condition)

Bonsoir Fo_rum

Merci, c'est là que je voulais en venir * ,et te lire m'a débloqué la situation

*
Code:
Sheets(1).[B4] = IIf((Weekday(Date) = 3) * (MsgBox("", vbYesNo, "Une réunion est prévue ?") = 6) = 1, "Nous avons réunion", "")
mais je séchais avec le IIF.

(Au Cas ou F23 ne contient pas la date du jour, prendre
Weekday(Sheets("Menu").[F23]) )


EDITION: Bonsoir nolich

(Je n'oserai pas dire mieux 😉 , sinon ca va être mauvais pour mon cholestérol )
 
Dernière édition:
Re : macro (condition)

merci tout le monde de votre aide !!!
mais le soucis c'est que la phrase "nous avons réunion" ne s'inscrit pas dans la feuille "planning" en range "B40" pourquoi ?
mais le reste fonctionne (quand je mets la date du pc un mardi et que j'ouvre mon classeur, dans ma première feuille "Menu" la macro s'active et me demande "Avons-nous réunion ?"
merci (pardon mais je débute en vba, je ne voudrais vous faire perdre votre temps mais c'est en travaillant avec des gens de talent qu'on apprend le mieux !) encore un grand merci !!!
 
Re : macro (condition)

Bonjour


quand je mets la date du pc un mardi

merci mais je pense que le code n'est pas lié à la date du système
🙄🙄

Donc on finit par être d'accord (lol)

Chinel, quel est le code que tu utilises actuellement ?


PS: je vois que tu est inscrit depuis 2007, tu ne dois plus être un débutant donc
ni en VBA, ni pour ce qui de connaitre la charte du forum. 😀
 
Dernière édition:
Re : macro (condition)

dans ThisWorkbook, j'ai ceci:

Private Sub Workbook_Open()
If Weekday(Sheets("Menu").[F23]) = 3 Then '3 pour un mardi
Sheets("planning").[C40] = _
IIf(MsgBox("", vbYesNo, "Une réunion est prévue ?") _
= 6, "Nous avons réunion", "")
End If
End Sub
voici le code que j'utilise (sachant que la feuille "planning" est cachée et verrouillée) merci !
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
527
Réponses
4
Affichages
596
Réponses
9
Affichages
891
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…