Mise en forme d'une feuille avec visuels
bonjour,
Voici mon souci, je réalise un cahier de maintenance celui ci a bien pris forme et arrive bientôt au terme. (enfin presque...)
voici le visuel de la feuille ou je rencontre des problèmes.
Alors il y a 2 choses qui ne vont pas :
la première est que ma cellule qui déclenche mes visuels reste active quand je sort de la feuille d'où quand je reviens sur ma feuille je n'ai pas de réinit. de mes visuels
il faudrait que quand je quitte ma feuille ma cellule sélectionnée aille sur une cellule qui ne déclenche rien comme ça mes visuels s'effacent.
La deuxième choses est que dans la cellule I5 j'ai le titre affiché en A47 quand je sélectionne mes cellules G50,G51,G52....
idem pour les autres titres en bleu ex. : CAPTEUR DE CHLORE la cellule I5 me renvoie I25 quand je sélectionne I26
ci joint le bout de programme me permettant les manip.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Sheets("Documentations").Select
Feuil3.Document1.Picture = LoadPicture("")
Feuil3.Document2.Picture = LoadPicture("")
If Not Intersect(Target, Range("a38")) Is Nothing Then
Feuil3.Document1.Picture = LoadPicture("F:\01_DD\01_R&I\01_A-INSTALL\01_P&P\04_Sup_tech\03 - Cahier de maintenance\Docs\ReseauVPN.jpg")
ActiveWindow.ScrollRow = 8
End If
If Not Intersect(Target, Range("a39")) Is Nothing Then
Feuil3.Document1.Picture = LoadPicture("F:\01_DD\01_R&I\01_A-INSTALL\01_P&P\04_Sup_tech\03 - Cahier de maintenance\Docs\LiaisonRS232.jpg")
ActiveWindow.ScrollRow = 8
End If
If Not Intersect(Target, Range("g48")) Is Nothing Then
Feuil3.Document1.Picture = LoadPicture("F:\01_DD\01_R&I\01_A-INSTALL\01_P&P\04_Sup_tech\03 - Cahier de maintenance\Docs\Concentrateurs_CCC.jpg")
ActiveWindow.ScrollRow = 8
End If
If Not Intersect(Target, Range("g50")) Is Nothing Then
Feuil3.Document1.Picture = LoadPicture("F:\01_DD\01_R&I\01_A-INSTALL\01_P&P\04_Sup_tech\03 - Cahier de maintenance\Docs\CC01_Montmartre.jpg")
Feuil3.Document2.Picture = LoadPicture("F:\01_DD\01_R&I\01_A-INSTALL\01_P&P\04_Sup_tech\03 - Cahier de maintenance\Docs\CC01b_Montmartre.jpg")
ActiveWindow.ScrollRow = 8
End If
Etc ...
Merci,
Bonsoir,
pour le premier soucis il y a l'événement Private Sub Worksheet_Deactivate() qui vous permet au "quitté" de la feuille de lancer un code VBA, dans celui-ci encadré par Application.EnableEvents = False et la même en true (à ne pas oublier) vous pouvez alors sélectionner une autre cellule "neutre"
Private Sub Worksheet_Deactivate()
Application.EnableEvents = False
Range("C5").Select
Application.EnableEvents = True
End Sub
Mais s'il faut que cette sélection Neutre lance le code d'effacement des images alors il faut juste mettre le "Range" et oublier les "Applications".
Pour le point 2 je n'ai pas saisie...
@ bientôt
LouReeD
Bonsoir,
pour le premier soucis il y a l'événement Private Sub Worksheet_Deactivate() qui vous permet au "quitté" de la feuille de lancer un code VBA, dans celui-ci encadré par Application.EnableEvents = False et la même en true (à ne pas oublier) vous pouvez alors sélectionner une autre cellule "neutre"
Private Sub Worksheet_Deactivate() Application.EnableEvents = False Range("C5").Select Application.EnableEvents = True End Sub
Mais s'il faut que cette sélection Neutre lance le code d'effacement des images alors il faut juste mettre le "Range" et oublier les "Applications".
Pour le point 2 je n'ai pas saisie...
@ bientôt
LouReeD
Bonjour et merci pour le retour,
En fait pour faire au plus simple dans mes explications ci joint le fichier test.
Espérant que ma demande soit plus compréhensible
Cdt,
Bonsoir,
pour le premier soucis il y a l'événement Private Sub Worksheet_Deactivate() qui vous permet au "quitté" de la feuille de lancer un code VBA, dans celui-ci encadré par Application.EnableEvents = False et la même en true (à ne pas oublier) vous pouvez alors sélectionner une autre cellule "neutre"
Private Sub Worksheet_Deactivate() Application.EnableEvents = False Range("C5").Select Application.EnableEvents = True End Sub
Mais s'il faut que cette sélection Neutre lance le code d'effacement des images alors il faut juste mettre le "Range" et oublier les "Applications".
Pour le point 2 je n'ai pas saisie...
@ bientôt
LouReeD
Re,
En fait pour la première question j'ai ajouter à mon bouton "documentation""
Sub Documentations()
'
' Documentations Macro
'
'
Sheets("Documentations").Select
ActiveWindow.ScrollRow = 52
ActiveWindow.ScrollRow = 8
Range("A1").Select
End Sub
- Messages
- 1'025
- Excel
- 2016 FR // 365
- Inscrit
- 19/04/2019
- Emploi
- Étudiant en 5e année d'école d'Ingénieur
Salut Esteban, LouReeD,
@Esteban pour ta deuxième demande, à mettre dans le code de ta feuille :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("G50:G52")) Is Nothing Then
Range("I5").Value = Range("A47").Value
End If
End Sub
À adapter selon ton code évidemment.
Bonne journée,
Baboutz
Salut Esteban, LouReeD,
@Esteban pour ta deuxième demande, à mettre dans le code de ta feuille :
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Intersect(Target, Range("G50:G52")) Is Nothing Then Range("I5").Value = Range("A47").Value End If End Sub
À adapter selon ton code évidemment.
Bonne journée,
Baboutz
Merci Baboutz
Ca fonctionne nickel !
Bonne journée
Bonsoir,
Bon je 'avais pas saisi le principe de la demande... Je crois qu'en ce moment je perd un peu le fil d'Excel...
Humm ? c'est pas bon tout ça !
Il me faut du repos, heureusement, les vacances arrivent à grand pas !
@ bientôt
LouReeD