• Initiateur de la discussion Initiateur de la discussion beaf77
  • 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 !

beaf77

XLDnaute Junior
Bonjour le forum,

Je viens vers vous car mes capacités sont limitées et là face à mes ambitions, je ne peux que faire appel à vous.

Il s’agit d’un planning basique sur lequel je souhaiterai automatiser certaines choses.

2 problèmes à résoudre sur ce fichier :
1) Lorsque je valide dans la colonne E « réalisé » à l’aide de la liste déroulante ( X ), je voudrai qu’automatiquement cela barre le texte associé en cellule C pour signifier que ce projet est validé et réalisé.

2) je souhaiterai avec des macros et des boutons, sur une feuille à part créer un menu sur lequel j’aurai 12 boutons associés à chacun des mois de l’année et dès que l’on clique sur le mois de janvier, il nous amène à la partie du planning correspondant à janvier et ainsi de suite : J’ai réussi à le faire pour un mois mais quand je fais le suivant, il fait la même chose que le précédent (la macro enregistrée ne conserve pas la position exacte sur la feuille).

J’espere que mes explications sont assez claires et si quelqu’un a la solution à mes problèmes, ce serait formidable.
En vous remerciant par avance, cordialement
 
Bonjour Beat, bonjour le forum,

J'ai un peu modifié ton fichier en ce sens que j'ai supprimé le partage de l'onglet Agenda 2006 en deux fenêtres. Il n'y en a plus qu'une mais avec les volets figés en A5.
Pour revenir au menu j'ai rajouté uhne macro événementielle sur le double-clic dans la plage des mois (A5:A160).

Dis-moi si ça te convient.
[file name=Beat.zip size=16272]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Beat.zip[/file]
 

Pièces jointes

Bonjour Beat, bonjour le forum,

Damned ! ce n'est pourtant que le tien modifié. Je réesaie et au cas où ça ne marche pas voici les macros utilisées :


Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Application.Intersect(Target, Range('A5:A166')) Is Nothing Then
Cancel = True 'évite le mode étirion lié au double clic
Sheets('Menu').Activate
End If
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range('E5:E166')) Is Nothing Then
If Target.Value = 'X' Then Target.Offset(0, -1).Font.Strikethrough = True
If Target.Value = '' Then Target.Offset(0, -1).Font.Strikethrough = False
End If
End Sub

tu transposeras pour les autres mois...

Sub Janvier()
Sheets('Agenda 2006').Select
Range('C5').Select
ActiveWindow.ScrollRow = 5
End Sub
[file name=agenda_20060215145958.zip size=16272]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/agenda_20060215145958.zip[/file]

Message édité par: Robert, à: 15/02/2006 15:00
 

Pièces jointes

merci robert

je ne peux tjs pas ouvrir ton fichier
au moment de dezipper il me dit que ton fichier n'est pas valide.
Bref je vais m'arranger avec ce que tu m'as transcris dans ton message precedent.
Je connais rien au VBA mais je crois que je vais devoir m'y mettre.
Merci encore du coup de main, je regarde ce que tu m'as donné et je te tiens au courant
bonne APM
Cdt
 
Hello le Forum, Robert, Beaf,

Ci joint mon exemple à moi.

Peut être passera-t'il mieux ?

Par contre Beaf excuse moi mais j'ai viré ton jaune abominable qui me donnait la migraine !

@+

Creepy [file name=Agenda_RH_2006.zip size=17817]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Agenda_RH_2006.zip[/file]
 

Pièces jointes

Robert,

Pour le problème du fichier a ouvrir, cela doit venir de mon pc au boulot mais je ne peux regler ce pb qui est recurent parce que ce n'est pas la première fois que cela m'arrive.
Bref...

Pour ce qui est de mon problème 1 (macro dirigé vers la cellule spécifique du mois), ta formule en vba marche tres tres bien robert et c ok pour moi.
Maintenant pour mieux comprendre tout ca peux tu me decrypter ce que ca signifie

Sub Janvier() je comprends
Sheets('Agenda 2006').Select je comprends
Range('C5').Select je comprends
ActiveWindow.ScrollRow = 5 je comprends pas l'interet de cette ligne mais il faut la mettre pour que ca marche
tu pourrais me la traduire pour mon interet personnel.

Sinon je vais maintenant m'attaquer à l'autre pb avec les formules que tu m'as données.
Si j'ai bien compris, tu me donnes 2 possibilités pour le resoudre?
faut les mettre dans une macro?

Encore merci
End Sub
 
Marche tjs pas pour ton fichier creepy 🙁

Il me marque le message suivant:

Ne peut ouvrir le fichier :il ne semble pas etre un ZIP valide
Si ce fichier appartient à une sauvegard, insérez le dernier disque de l'ensemble et reessayez.

Bizar? 😱

bon sinon la formule VBA pour rayer la cellule C quand E affiche X, je la saisie pas trop et je ne vois pas trop ou la placer.

Merci messieurs

PS: moi j'aime bien le jaune meme si j'admet que celui ci est un peu flashy B)
 
Bonjour Beat, Creepy, bonjour le forum,

ActiveWindow.ScrollRow = 5 signifie que la ligne 5 va être affichée en tout début de la fenêtre active. Comme j'ai figé les volets, elle apparaîtra juste en dessous des titres...

Je ne comprends pas bien quand tu parles de formules... Je t'ai donné deux codes qui sont des macros événementielles. L'une se déclenche à chaque changement dans la colonne E :

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range('E5:E166')) Is Nothing Then
If Target.Value = 'X' Then Target.Offset(0, -1).Font.Strikethrough = True
If Target.Value = '' Then Target.Offset(0, -1).Font.Strikethrough = False
End If
End Sub
Elle permet de barrer automatiquement le texte.


L'autre se déclenche au double-clic dans la colonne A :

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Application.Intersect(Target, Range('A5:A166')) Is Nothing Then
Cancel = True 'évite le mode étirion lié au double clic
Sheets('Menu').Activate
End If
End Sub

Elle permet de revenir à l'onglet Menu.


Tu dois placer ces deux codes dans le composant Feuil2(Agenda 2006) de VBE.


Édition :

Au pire, car ce n'est pas dans l'éthique de la charte, donne-moi une adresse mail à laquelle je puisse t'envoyer le fichier non zippé...


Message édité par: Robert, à: 15/02/2006 17:04
 
Bonjour le fil, bonjour le forum,

Ooops il y a une erreur dans le code. Corrige-la car pour l'instant il barre de texte de la colonne D et non pas C.

If Target.Value = 'X' Then Target.Offset(0,
-2).Font.Strikethrough = True
If Target.Value = '' Then Target.Offset(0,
-2).Font.Strikethrough = False
 
- 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
3
Affichages
339
Réponses
4
Affichages
381
Réponses
1
Affichages
99
Réponses
32
Affichages
993
Réponses
10
Affichages
189
Retour