cellules clignotantes et classeurs joints...

paul87

XLDnaute Impliqué
bonsoir...
pour faire suite à un post initié ce matin....
voici une version tres tres épuree de mes fichiers de travail,
il s'agit de 2 classeurs. l'un nommé RECAP et l'autre nommé TEST_AB.
(dans mon utilisation quotidienne la touche mise à jour fait le "balayage d'une quinzaine de classeurs .xls....ça marche au poil et cela me donne un prévisionnel sur 4 jours super efficace)
Afin d'avoir une meilleure lisibilité de mes classeurs de travail, j'ai souhaité ajouter des cellules clignotantes sur les dates.(sur 3 jours.) cela marche tres bien pour ce qui est du clignotement.
Mais, là ou j'ai un problème c'est pour l'ouverture et fermeture des classeurs.
Pour les va et viens d'un classeur à l'autre.
je souhaiterai lorsqu'on actionne le bouton Mise à jour qu'il il ait ouverture et fermeture du classeur automatiquement, sans avoir à repondre à "voulez-vous enregistrer les modif....." ce qui marche parfaitement dans l'option sans clignotement.
Par contre je voudrais pouvoir enregistrer les modifs, si besoin,lors de l'acces au classeur par TEST_AB
J'espère que je n'ai pas été trop flou..mais avec les fichiers joints cela sera peut-etre plus clair..
un grand merci à l'avance si quelqu'un avait une idée.
 

Pièces jointes

  • RECAP.zip
    16.3 KB · Affichages: 41
  • RECAP.zip
    16.3 KB · Affichages: 39
  • RECAP.zip
    16.3 KB · Affichages: 39
  • TEST_AB.zip
    27.9 KB · Affichages: 36
  • TEST_AB.zip
    27.9 KB · Affichages: 38
  • TEST_AB.zip
    27.9 KB · Affichages: 38

paul87

XLDnaute Impliqué
Re : cellules clignotantes et classeurs joints...

re bonjour
et merci pour votre interet à mon problème...
effectivement, avec
Code:
thisworkbook.close savechanges=false
j'évite la demande d'enregistrement...avec un enregistrement auto fait par
Code:
ActiveWorkbook.Save
mais ce qu'il me faudrait, enfin je crois, c'est que cela ferme complétement Excel..lorsque ça quitte le classeur...Test_AB
mon problème se situe au niveau de la fermeture et ré ouverture, et surtiut de faire disparaitre la demande d'enregistrement sur la fonction "Mise à jour" du Recap, car comme j'ai entre 15 et 20 classeurs en mise à jours sur Recap..
j'aurais autant de demande d'enregistrement....!! au moins 10 fois par jours!!!
Merci par avance
 

JeanMarie

XLDnaute Barbatruc
Re : cellules clignotantes et classeurs joints...

Bonjour

Pour désactiver l'affichage des boîtes de dialogues, il y a la propriété DisplayAlerts, de l'objet application.
Modifie ton code
Code:
'-----------------------------FIN TEST AB----------------------------------

Application.DisplayAlerts = False
Workbooks("test_AB.xls").Close
Attention, l'affectation de la propriété à false, reste valable pour toute la session de l'ouverture d'Excel, donc plus aucune boîte d'alerte ne sera affichée. Après le traitement de ta macro, modifie la propriété à True.

Avec cette option, si tu ne fais rien, ton fichier ne sera pas sauvegardé...
Pour enregistrer le fichier automatiquement, copie dans le thisworkbook du classeur concerné, le code ci-dessous
Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    ActiveWorkbook.Save
End Sub

J'espère avoir eu, une quelconque utilité sur la résolution de ton problème.

@+Jean-Marie
 

paul87

XLDnaute Impliqué
Re : cellules clignotantes et classeurs joints...

Bonjour JeanMarie,
et vraiment merci pour ton aide...
mais je n'y arrive pas,...
ca ne fonctionne pas comme ça devrait..
- lorsqu'on ouvre le fichier Recap et qu'on lance la mise à jour, elle se fait bien, mais à la fin du test, le classeur TEST_AB devrait se fermer.et là il reste ouvert
- Depuis le UF si l'on ouvre le classeur TEST_AB, c'est ok, mais si on veut faire un retour sur Recap.....on a un message : "Recap.xls est déja ouvert...."
alors que dans ma version de base, sans clignotant, Recap reste ouvert en arriere plan, mais je n'ai pas de message.
 

Pièces jointes

  • RECAP.zip
    16.5 KB · Affichages: 23
  • RECAP.zip
    16.5 KB · Affichages: 27
  • RECAP.zip
    16.5 KB · Affichages: 24
  • TEST_AB.zip
    28.2 KB · Affichages: 26
  • TEST_AB.zip
    28.2 KB · Affichages: 25
  • TEST_AB.zip
    28.2 KB · Affichages: 23

paul87

XLDnaute Impliqué
Re : cellules clignotantes et classeurs joints...

Ci joint ma version de base....(j'ai désactivé la fonction de clignot) et là ça fonctionne bien..
...?
 

Pièces jointes

  • RECAP.zip
    11.3 KB · Affichages: 21
  • RECAP.zip
    11.3 KB · Affichages: 22
  • RECAP.zip
    11.3 KB · Affichages: 22
  • TEST_AB.zip
    27.2 KB · Affichages: 31
  • TEST_AB.zip
    27.2 KB · Affichages: 27
  • TEST_AB.zip
    27.2 KB · Affichages: 24

JeanMarie

XLDnaute Barbatruc
Re : cellules clignotantes et classeurs joints...

Re...

La première tentative n'étant pas la bonne...

Pour la fermeture du fichier TEST_AB, rajoute une ligne dans le code du Userform
Code:
'-----------------------------FIN TEST AB----------------------------------

Application.Run "TEST_AB.xls!ArrêtEclairage"
Application.DisplayAlerts = False
Workbooks("test_AB.xls").Close
Cette ligne force l'arrêt de la méthode de clignotement sans ce soucier de l'événement de fermeture.

Pour le lien de retour au fichier de Récap
Modifie le code du bouton de la feuille ainsi
Code:
Private Sub CommandButton1_Click()
Application.DisplayAlerts = False
ArrêtEclairage
Workbooks("RECAP.xls").Activate
Application.Run "RECAP.xls!LanceUserform"
Workbooks("test_AB.xls").Close
End Sub
Pour éviter le message de réouverture du fichier Récap, qui est encore ouvert, on bascule sur le fichier par Workbooks("RECAP.xls").Activate
Mais cela pose un problème, le lancement de la macro à l'ouverture n'est pas exécuter, donc le userform ne s'affiche pas.
La ligne Application.Run "RECAP.xls!LanceUserform" permet de réafficher le userform.
Il faut donc rajouter dans le fichier Récap, un module pour créer une sub de lancement de l'userform.
NOTA : j'ai essayé de mettre la sub événementielle à l'ouverture mais cela ne fonctionne pas.
Code:
Sub LanceUserform()
Load UserFormMenu ' ou le nom nommé au userform
UserFormMenu.Show ' ou NomUserForm.Show
End Sub
Ce qui permet de diminuer le code de la procèdure d'ouverture
Code:
'------------------------------OUVERTURE AUTOMATIQUE SUR USERFORMMENU---------------------------
Private Sub WorkBook_Open()
LanceUserform
End Sub
'-----------------------------------------------------------------------------------------------
@+Jean-Marie
 

paul87

XLDnaute Impliqué
Re : cellules clignotantes et classeurs joints...

Bonsoir....
alors là c'est FOR-MI-DABLE !!!
Vraiment un tres tres tres grand merci pour le temps que tu as consacré à mon sujet...c'est tres sympa...:)
J'espère un jour aussi pouvoir aider les "Forumistes.."..mais pour l'instant..il vaut mieux pas!!!!!
Juste un dernier point...quel code dois-je utiliser pour rajouter sur ma feuille Test_AB un bouton qui lance l'enregistrement...afin de ne pas oublier les sauvegardes le cas échéant...
100000 MERCI!!!
 

Discussions similaires