OVH Cloud OVH Cloud

Macro sur évènement de feuille

3 réponses
Avatar
Yann
Bonjour,
J'ai un fichier excel avec 1 feuille, mais =E0 partir de=20
celle-ci, je cr=E9e une autre feuille et j'aimerai lui=20
affecter une macro sur quelques =E9v=E8nements. Hors, je=20
n'arrive a affecter une macro que sur les =E9v=E8nements
OnCalculate
OnData
OnEntry
OnSheetActivate
OnSheetDeactivate

Mais j'aimerai savoir comment faire pour y affecter des=20
macros sur les =E9v=E8nements
Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel=20
As Boolean)
Worksheet_BeforeRightClick(ByVal Target As Range, Cancel=20
As Boolean)
Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
et surtout
Worksheet_SelectionChange(ByVal Target As Range)

Merci pour vos r=E9ponses...

Bye
Yann

3 réponses

Avatar
Vincent.
Re !
Bon, alors là, c'est pas gagné non plus, mais tu peux
toujours ajouté du code à 1 feuille avec :
Option Explicit

Sub AjoutDeCode()
Dim MyWkbk As Workbook
Dim MyWksht As Worksheet

Set MyWkbk = ThisWorkbook 'choisir ici le bon classeur
Set MyWksht = MyWkbk.Worksheets(1) 'choisir la bonne
feuille

With MyWkbk.VBProject.VBComponents
(MyWksht.CodeName).CodeModule
.InsertLines .CountOfLines + 1, "Private Sub
Worksheet_SelectionChange(ByVal Target As Range)"
.InsertLines .CountOfLines + 1, "'Ton code"
.InsertLines .CountOfLines +
1, "'Target.Interior.ColorIndex = 10 'par exemple"
.InsertLines .CountOfLines + 1, "End Sub"
End With
End Sub

Qu'en penses-tu ?
A+
-----Message d'origine-----
Bonjour,
J'ai un fichier excel avec 1 feuille, mais à partir de
celle-ci, je crée une autre feuille et j'aimerai lui
affecter une macro sur quelques évènements. Hors, je
n'arrive a affecter une macro que sur les évènements
OnCalculate
OnData
OnEntry
OnSheetActivate
OnSheetDeactivate

Mais j'aimerai savoir comment faire pour y affecter des
macros sur les évènements
Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel
As Boolean)
Worksheet_BeforeRightClick(ByVal Target As Range, Cancel
As Boolean)
Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
et surtout
Worksheet_SelectionChange(ByVal Target As Range)

Merci pour vos réponses...

Bye
Yann
.



Avatar
Yann
Re-,
Je vois l'idée, mais cela ne fonctionne pas car j'ai le
message d'erreur suivant (et en plus c'est en anglais)
"Programmatic access to Visual Basic Project is not
trusted."
sur cette ligne de code
With MyWkbk.VBProject.VBComponents
(MyWksht.CodeName).CodeModule

Encore une idée... ???

Merci tout de même pour la direction :o)

By
Yann
-----Message d'origine-----
Re !
Bon, alors là, c'est pas gagné non plus, mais tu peux
toujours ajouté du code à 1 feuille avec :
Option Explicit

Sub AjoutDeCode()
Dim MyWkbk As Workbook
Dim MyWksht As Worksheet

Set MyWkbk = ThisWorkbook 'choisir ici le bon classeur
Set MyWksht = MyWkbk.Worksheets(1) 'choisir la bonne
feuille

With MyWkbk.VBProject.VBComponents
(MyWksht.CodeName).CodeModule
.InsertLines .CountOfLines + 1, "Private Sub
Worksheet_SelectionChange(ByVal Target As Range)"
.InsertLines .CountOfLines + 1, "'Ton code"
.InsertLines .CountOfLines +
1, "'Target.Interior.ColorIndex = 10 'par exemple"
.InsertLines .CountOfLines + 1, "End Sub"
End With
End Sub

Qu'en penses-tu ?
A+
-----Message d'origine-----
Bonjour,
J'ai un fichier excel avec 1 feuille, mais à partir de
celle-ci, je crée une autre feuille et j'aimerai lui
affecter une macro sur quelques évènements. Hors, je
n'arrive a affecter une macro que sur les évènements
OnCalculate
OnData
OnEntry
OnSheetActivate
OnSheetDeactivate

Mais j'aimerai savoir comment faire pour y affecter des
macros sur les évènements
Worksheet_BeforeDoubleClick(ByVal Target As Range,
Cancel


As Boolean)
Worksheet_BeforeRightClick(ByVal Target As Range,
Cancel


As Boolean)
Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
et surtout
Worksheet_SelectionChange(ByVal Target As Range)

Merci pour vos réponses...

Bye
Yann
.

.





Avatar
Yann
OUPS!!!
Je suis allé un peu vite, cette ligne fonctionne après
avoir effectivement mis la sécurité comme il le faut,
Par contre ça ne fonctionne pas en pas à pas. Par contre
en vitesse normal, c'est au poil...

Un grand merci.

Yann

-----Message d'origine-----
Re !
Bon, alors là, c'est pas gagné non plus, mais tu peux
toujours ajouté du code à 1 feuille avec :
Option Explicit

Sub AjoutDeCode()
Dim MyWkbk As Workbook
Dim MyWksht As Worksheet

Set MyWkbk = ThisWorkbook 'choisir ici le bon classeur
Set MyWksht = MyWkbk.Worksheets(1) 'choisir la bonne
feuille

With MyWkbk.VBProject.VBComponents
(MyWksht.CodeName).CodeModule
.InsertLines .CountOfLines + 1, "Private Sub
Worksheet_SelectionChange(ByVal Target As Range)"
.InsertLines .CountOfLines + 1, "'Ton code"
.InsertLines .CountOfLines +
1, "'Target.Interior.ColorIndex = 10 'par exemple"
.InsertLines .CountOfLines + 1, "End Sub"
End With
End Sub

Qu'en penses-tu ?
A+
-----Message d'origine-----
Bonjour,
J'ai un fichier excel avec 1 feuille, mais à partir de
celle-ci, je crée une autre feuille et j'aimerai lui
affecter une macro sur quelques évènements. Hors, je
n'arrive a affecter une macro que sur les évènements
OnCalculate
OnData
OnEntry
OnSheetActivate
OnSheetDeactivate

Mais j'aimerai savoir comment faire pour y affecter des
macros sur les évènements
Worksheet_BeforeDoubleClick(ByVal Target As Range,
Cancel


As Boolean)
Worksheet_BeforeRightClick(ByVal Target As Range,
Cancel


As Boolean)
Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
et surtout
Worksheet_SelectionChange(ByVal Target As Range)

Merci pour vos réponses...

Bye
Yann
.

.