Cellule clignotante

Résolu
Bonjour, le Forum

Je suis dans une galère que vous seul pouvez m'en sortir, je gère des agents qui partent en congé sans que ces derniers me donnent leurs feuilles, aussi j'aimerais que sur le planning ou ils sont, leurs noms soit un bouton que quand je clique dessus apparaisse un message leurs demandant leurs feuilles de congé, comme ça je pourrais mieux les gérer,
ou le mieux et ça je ne sais pas, une cellule clignotante me rappelant de les contacter pour leurs rappeler qu'ils n'oublient pas de me donner leurs feuilles sinon ils ne partent pas

Par avance, merci à vous et o Forum pour votre implication à aider un novice d'excel

44 réponses

Résumé de la discussion

La demande porte sur la création d'un bouton dans Excel sur le planning, invitant les agents à fournir leurs feuilles de congé et affichant un message pris sur une autre feuille, Mars14. Des propositions envisagent soit un bouton formulaire soit un bouton ActiveX, avec une macro placée dans le module principal et capable d'afficher une UserForm ou de lire la cellule B3. D'autres échanges insistent sur l'alignement du nom des onglets avec celui du code et sur des solutions permettant d'activer la feuille ciblée depuis le bouton. En cas de difficulté, certains suggèrent de prévoir une liste déroulante des feuilles pour sélectionner rapidement la cible, puis d'afficher le message de manière dynamique.

Bobot (l’IA à votre service)
  1. Alors fait attention bonne neige
    0
    1. Re,

      je me défend pas mal merci, parfois ça décoiffe mais bon il faut rester prudent
      0
      1. holala, que ça été fou pour moi de trouver l'erreur que je faisais, il fallait simplement que je change le nom "test2014" par "planning2014", excel est vraiment un logiciel FOU, Mike, toi et le Forum, vous êtes vraiment Géniaux

        Encore mille merci à toi et bonnes vacances de ski, si tu es aussi bon sur excel qu'au ski, tu dois déchirer

        Merci encore
        0
        1. Re,

          Il faut que l'userform soit sur le fichier contenant le code, pas dans le fichier que tu dois ouvrir, contrôle le nom de l'userform, dans mon code il s'agit de l'Userform1
          0
          1. Je ne comprends plus rien sur ton travail ça fonctionne mais dès que je veux mettre mes éléments, le planning, je n'est plus l'userform, pourtant je change l'hyperlien vers le planning mais rien n'y fait
            0
            1. oui, c'est l'userform et les codes que tu as

              J'ai fait coller ou deplacer la feuille mais rien n'y fait, je n'ai que le planning sans l'userform
              0
              1. Re

                l'avertissement de l'userform ne s'active pas, il me ramène directement sur le planning
                0
                1. Re,

                  Oui dans le code, comme cela

                  Workbooks.Open Filename:=ThisWorkbook.Path & "\test_2014-2.xls"
                  UserForm1.Show
                  0
                  1. re

                    Est ce que je remets tes codes pour avoir l'userform ?
                    0
                    1. Re,

                      Sort le dossier du Zip, si tes fichiers sont dans le même répertoire, ouvre le classeur2 et soit tu clic sur ton bouton soit tu utilise le bouton activex que j'ai créé

                      https://www.cjoint.com/?DBziiIix4GM
                      0
                      1. oupss, mille excuses, j"ai mal enregistré les fichiers c'est du excel, la fatigue
                        0
                        1. Bonsoir,
                          Juste une remarque, pourquoi tout d'un coup un classeur Excel (MSO) et un classeur ODS de OpenOffice Calc ?
                          Qu'elle est le lien entre les deux ?

                          0
                          1. Re,

                            Nous sommes loin de la demande initiale ou effectivement je n'ai rien compris.

                            Il n'a jamais été question de fichier Open Office qui ouvrirait un fichier Excel. Pourquoi deux fichiers de type différent et de deux fichiers.

                            n'est il pas possible d'utiliser soit des fichiers open office ou Excel

                            et maintenant je comprends pourquoi les codes ne fonctionnaient pas

                            A+
                            Mike-31

                            Une période d'échec est un moment rêvé pour semer les graines du savoir.
                            0
                            1. Je crois que l'on ne se comprend pas,

                              je te mets les fichiers sur cijoint

                              http://cjoint.com/?DByxcxoyxAu
                              http://cjoint.com/?DByxdBDUs8G

                              est ce qu'il est possible de faire des liens hypertexte qui m'oriente du fichier planning quand on click dessus et qui va directement sur le planning 2014 via tes codes

                              je suis conscient que je te demande c'est un truc de fou, parce que c'est un truc de fou sachant que ces 2 fichiers sont dans un même dossier parce que les liens ne dissocie pas si j'ai compris le principe d'excel

                              Encore 1000 merci à toi et ton investissement qui depuis plusieurs mois m'aide beaucoup à concrétiser mon bien être professionnel
                              0
                              1. Re,

                                supprime tous mes codes, lorsque tu nommes tes onglets exemple mars14 sépare le mois et l'année par le tiret du 8 exemple mars_14 cela évitera que le nom d'onglet soit considéré comme une date
                                ensuite colle ces codes dans les propriétés de la feuille planning (clic droit sur l'onglet/visualiser le code)
                                ce code créera une liste de validation en cellule E5 dans la liste les noms de feuilles "recap absenteisme" et "planning" seront absent puisque l'affichage de l'userform ne les concerne pas

                                Private Sub Worksheet_Activate()
                                Dim Liste As String
                                For Each sh In ThisWorkbook.Sheets
                                If sh.Name <> "recap absenteisme" And sh.Name <> "planning" Then Liste = Liste & sh.Name & ","
                                Next
                                Liste = Left$(Liste, Len(Liste) - 1)
                                With Sheets("planning").Range("E5").Validation
                                .Delete
                                .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:=Liste
                                End With
                                End Sub

                                Private Sub Worksheet_Change(ByVal Target As Range)
                                On Error Resume Next
                                If Not Intersect(Target, [E5]) Is Nothing Then
                                Sheets(Range("E5").Value).Activate
                                UserForm1.Show
                                End If
                                End Sub

                                https://www.cjoint.com/?DByvDq9GZUt

                                A+
                                Mike-31

                                Une période d'échec est un moment rêvé pour semer les graines du savoir.
                                0
                                1. Je n'avais pas vu la subtilité de Le Pingou, c'est pour ça que j'avais bidouille avec tes codes mais hélas ça ne fonctionne pas, ton idée me parait idéale.

                                  Mes loulous sont malhonnètes, on ne peut rien contre ça, l'Homme est ainsi fait

                                  Je te remercie Mike
                                  0
                                  1. Re,

                                    Pour activer une feuille dont la position ou le nom peut évoluer, il faut l'écrire dans un langage qu'Excel comprend, Le pingou t'a proposé une possibilité avec une liste déroulante qui me parait la mieux adaptée et peut être perfectionnée,

                                    pour ma part tout en VBA une proposition qu'il suffisait de cliquer en cellule A2 de la feuille planning et un clic sur la feuille souhaitée, la liste des feuilles s'actualisait automatiquement.
                                    le principe du bouton peut être complété, par exemple tu clic sur le bouton, une userform s'ouvre pour choisir la feuille et enclencher les codes, mais on complique le code pour rien.

                                    Tu me dira pourquoi faire simple lorsqu'il est possible de faire compliqué et si en plus tes loulous ne sont pas capable de faire autre chose que de cliquer sur un bouton, cela va devenir difficile et je ne pourrai pas suivre trop longtemps la discussion, je prépare un séjour au ski
                                    0
                                    1. Re

                                      Apparement ce que je cherche à faire n'est pas possible, c'est faire dans un dossier 2 feuilles, dont une ou il y aurais un bouton "planning" qui irait sur une autre feuille avec les mois avec un lien hypertexte, je cherche mais à chaque fois il me mets en debogage sur Sheets("mars14").Activate
                                      0
                                      • 1
                                      • 2
                                      • 3