Salut à tous.
Je suis surpris de ne pas trouver dans les évenements de feuille un
BeforeUpdate(ByVal Target as Range, Cancel as Boolean), qui permettrait de
conserver simplement l'ancienne valeur d'une cellule si sa nouvelle valeur
entrée par l'utilisateur ne convient pas.
Y a-t-il moyen de simuler celà, ou bien je n'ai pas bien cherché ?
Merci de vos réponses.
--
--
Carpe Diem Quam Minimum Credula Postera
Bicose
Sic Transit Gloria Mundi, et
Arx Tarpeia Capitoli Proxima !!
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
isabelle
bonjour Gadget,
l'enregistrement s'applique à tout le fichier (classeur) s'il n'est pas possible d'enregistrer seulement une feuille, automatiquement il n'y a pas d'événement BeforeUpdate pour une feuille(onglet) par contre il y a les événememts : change, selection change, calculate
isabelle
Salut à tous. Je suis surpris de ne pas trouver dans les évenements de feuille un BeforeUpdate(ByVal Target as Range, Cancel as Boolean), qui permettrait de conserver simplement l'ancienne valeur d'une cellule si sa nouvelle valeur entrée par l'utilisateur ne convient pas. Y a-t-il moyen de simuler celà, ou bien je n'ai pas bien cherché ? Merci de vos réponses.
-- -- Carpe Diem Quam Minimum Credula Postera Bicose Sic Transit Gloria Mundi, et Arx Tarpeia Capitoli Proxima !!
bonjour Gadget,
l'enregistrement s'applique à tout le fichier (classeur)
s'il n'est pas possible d'enregistrer seulement une feuille,
automatiquement il n'y a pas d'événement BeforeUpdate pour une
feuille(onglet)
par contre il y a les événememts : change, selection change, calculate
isabelle
Salut à tous.
Je suis surpris de ne pas trouver dans les évenements de feuille un
BeforeUpdate(ByVal Target as Range, Cancel as Boolean), qui permettrait de
conserver simplement l'ancienne valeur d'une cellule si sa nouvelle valeur
entrée par l'utilisateur ne convient pas.
Y a-t-il moyen de simuler celà, ou bien je n'ai pas bien cherché ?
Merci de vos réponses.
--
--
Carpe Diem Quam Minimum Credula Postera
Bicose
Sic Transit Gloria Mundi, et
Arx Tarpeia Capitoli Proxima !!
l'enregistrement s'applique à tout le fichier (classeur) s'il n'est pas possible d'enregistrer seulement une feuille, automatiquement il n'y a pas d'événement BeforeUpdate pour une feuille(onglet) par contre il y a les événememts : change, selection change, calculate
isabelle
Salut à tous. Je suis surpris de ne pas trouver dans les évenements de feuille un BeforeUpdate(ByVal Target as Range, Cancel as Boolean), qui permettrait de conserver simplement l'ancienne valeur d'une cellule si sa nouvelle valeur entrée par l'utilisateur ne convient pas. Y a-t-il moyen de simuler celà, ou bien je n'ai pas bien cherché ? Merci de vos réponses.
-- -- Carpe Diem Quam Minimum Credula Postera Bicose Sic Transit Gloria Mundi, et Arx Tarpeia Capitoli Proxima !!
Gadget
Merci Isabelle. En fait, je me suis mal exprimé : je voulais parler du BeforeUpdate appliqué à une cellule ou à une plage. exemple : La modif d'une cellule particulière par l'utilisateur entraine l'execution d'une macro écrite par mes soins qui recalcule et modifie d'autres cellules. Au cas ou la valeur entrée par l'utilisateur ne convient pas, j'aimerais pouvoir récupérer l'ancienne valeur et la remettre à la place, mais celà semble impossible avec l'évènement _Change, puisqu'il n'y a pas de paramètre Cancel. Y a-t-il une solution ?
-- -- Carpe Diem Quam Minimum Credula Postera Bicose Sic Transit Gloria Mundi, et Arx Tarpeia Capitoli Proxima !! "isabelle" a écrit dans le message de news:
bonjour Gadget,
l'enregistrement s'applique à tout le fichier (classeur) s'il n'est pas possible d'enregistrer seulement une feuille, automatiquement il n'y a pas d'événement BeforeUpdate pour une feuille(onglet) par contre il y a les événememts : change, selection change, calculate
isabelle
Salut à tous. Je suis surpris de ne pas trouver dans les évenements de feuille un BeforeUpdate(ByVal Target as Range, Cancel as Boolean), qui permettrait de
conserver simplement l'ancienne valeur d'une cellule si sa nouvelle valeur
entrée par l'utilisateur ne convient pas. Y a-t-il moyen de simuler celà, ou bien je n'ai pas bien cherché ? Merci de vos réponses.
-- -- Carpe Diem Quam Minimum Credula Postera Bicose Sic Transit Gloria Mundi, et Arx Tarpeia Capitoli Proxima !!
Merci Isabelle.
En fait, je me suis mal exprimé : je voulais parler du BeforeUpdate appliqué
à une cellule ou à une plage. exemple :
La modif d'une cellule particulière par l'utilisateur entraine l'execution
d'une macro écrite par mes soins qui recalcule et modifie d'autres cellules.
Au cas ou la valeur entrée par l'utilisateur ne convient pas, j'aimerais
pouvoir récupérer l'ancienne valeur et la remettre à la place, mais celà
semble impossible avec l'évènement _Change, puisqu'il n'y a pas de
paramètre Cancel.
Y a-t-il une solution ?
--
--
Carpe Diem Quam Minimum Credula Postera
Bicose
Sic Transit Gloria Mundi, et
Arx Tarpeia Capitoli Proxima !!
"isabelle" <as.isabellevIE@videotron.ca> a écrit dans le message de
news:409F6770.D5942D67@videotron.ca...
bonjour Gadget,
l'enregistrement s'applique à tout le fichier (classeur)
s'il n'est pas possible d'enregistrer seulement une feuille,
automatiquement il n'y a pas d'événement BeforeUpdate pour une
feuille(onglet)
par contre il y a les événememts : change, selection change, calculate
isabelle
Salut à tous.
Je suis surpris de ne pas trouver dans les évenements de feuille un
BeforeUpdate(ByVal Target as Range, Cancel as Boolean), qui permettrait
de
conserver simplement l'ancienne valeur d'une cellule si sa nouvelle
valeur
entrée par l'utilisateur ne convient pas.
Y a-t-il moyen de simuler celà, ou bien je n'ai pas bien cherché ?
Merci de vos réponses.
--
--
Carpe Diem Quam Minimum Credula Postera
Bicose
Sic Transit Gloria Mundi, et
Arx Tarpeia Capitoli Proxima !!
Merci Isabelle. En fait, je me suis mal exprimé : je voulais parler du BeforeUpdate appliqué à une cellule ou à une plage. exemple : La modif d'une cellule particulière par l'utilisateur entraine l'execution d'une macro écrite par mes soins qui recalcule et modifie d'autres cellules. Au cas ou la valeur entrée par l'utilisateur ne convient pas, j'aimerais pouvoir récupérer l'ancienne valeur et la remettre à la place, mais celà semble impossible avec l'évènement _Change, puisqu'il n'y a pas de paramètre Cancel. Y a-t-il une solution ?
-- -- Carpe Diem Quam Minimum Credula Postera Bicose Sic Transit Gloria Mundi, et Arx Tarpeia Capitoli Proxima !! "isabelle" a écrit dans le message de news:
bonjour Gadget,
l'enregistrement s'applique à tout le fichier (classeur) s'il n'est pas possible d'enregistrer seulement une feuille, automatiquement il n'y a pas d'événement BeforeUpdate pour une feuille(onglet) par contre il y a les événememts : change, selection change, calculate
isabelle
Salut à tous. Je suis surpris de ne pas trouver dans les évenements de feuille un BeforeUpdate(ByVal Target as Range, Cancel as Boolean), qui permettrait de
conserver simplement l'ancienne valeur d'une cellule si sa nouvelle valeur
entrée par l'utilisateur ne convient pas. Y a-t-il moyen de simuler celà, ou bien je n'ai pas bien cherché ? Merci de vos réponses.
-- -- Carpe Diem Quam Minimum Credula Postera Bicose Sic Transit Gloria Mundi, et Arx Tarpeia Capitoli Proxima !!
Pascal Engelmajer
Salut, avec dans un module standard Public memo Private Sub Worksheet_Change(ByVal Target As Range) Dim mesConditions As Boolean 'pour tester Dim pl As Range mesConditions = True If Target.Address = Range("A1").Address Then If mesConditions Then Target.Value = memo End If End If End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim pl As Range If Target.Address = Range("A1").Address Then memo = Target.Value End If End Sub fonctionne (si saisie par un usager pour évènement SelectionChange)
-- Amicalement. Pascal "il n'y a pas de vent favorable pour celui qui ne sait pas ou il va." Sénèque. http://www.ilyapa.net/excel "Gadget" a écrit dans le message de news: 409f6f59$0$25396$
Merci Isabelle. En fait, je me suis mal exprimé : je voulais parler du BeforeUpdate appliqué
à une cellule ou à une plage. exemple : La modif d'une cellule particulière par l'utilisateur entraine l'execution d'une macro écrite par mes soins qui recalcule et modifie d'autres cellules.
Au cas ou la valeur entrée par l'utilisateur ne convient pas, j'aimerais pouvoir récupérer l'ancienne valeur et la remettre à la place, mais celà semble impossible avec l'évènement _Change, puisqu'il n'y a pas de paramètre Cancel. Y a-t-il une solution ?
-- -- Carpe Diem Quam Minimum Credula Postera Bicose Sic Transit Gloria Mundi, et Arx Tarpeia Capitoli Proxima !! "isabelle" a écrit dans le message de news:
bonjour Gadget,
l'enregistrement s'applique à tout le fichier (classeur) s'il n'est pas possible d'enregistrer seulement une feuille, automatiquement il n'y a pas d'événement BeforeUpdate pour une feuille(onglet) par contre il y a les événememts : change, selection change, calculate
isabelle
Salut à tous. Je suis surpris de ne pas trouver dans les évenements de feuille un BeforeUpdate(ByVal Target as Range, Cancel as Boolean), qui permettrait
de
conserver simplement l'ancienne valeur d'une cellule si sa nouvelle valeur
entrée par l'utilisateur ne convient pas. Y a-t-il moyen de simuler celà, ou bien je n'ai pas bien cherché ? Merci de vos réponses.
-- -- Carpe Diem Quam Minimum Credula Postera Bicose Sic Transit Gloria Mundi, et Arx Tarpeia Capitoli Proxima !!
Salut,
avec dans un module standard
Public memo
Private Sub Worksheet_Change(ByVal Target As Range)
Dim mesConditions As Boolean 'pour tester
Dim pl As Range
mesConditions = True
If Target.Address = Range("A1").Address Then
If mesConditions Then
Target.Value = memo
End If
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim pl As Range
If Target.Address = Range("A1").Address Then
memo = Target.Value
End If
End Sub
fonctionne (si saisie par un usager pour évènement SelectionChange)
--
Amicalement.
Pascal
"il n'y a pas de vent favorable pour celui qui ne sait pas ou il va."
Sénèque.
http://www.ilyapa.net/excel
"Gadget" <Gadgetokarim@noos.fr> a écrit dans le message de news:
409f6f59$0$25396$79c14f64@nan-newsreader-03.noos.net...
Merci Isabelle.
En fait, je me suis mal exprimé : je voulais parler du BeforeUpdate
appliqué
à une cellule ou à une plage. exemple :
La modif d'une cellule particulière par l'utilisateur entraine l'execution
d'une macro écrite par mes soins qui recalcule et modifie d'autres
cellules.
Au cas ou la valeur entrée par l'utilisateur ne convient pas, j'aimerais
pouvoir récupérer l'ancienne valeur et la remettre à la place, mais celà
semble impossible avec l'évènement _Change, puisqu'il n'y a pas de
paramètre Cancel.
Y a-t-il une solution ?
--
--
Carpe Diem Quam Minimum Credula Postera
Bicose
Sic Transit Gloria Mundi, et
Arx Tarpeia Capitoli Proxima !!
"isabelle" <as.isabellevIE@videotron.ca> a écrit dans le message de
news:409F6770.D5942D67@videotron.ca...
bonjour Gadget,
l'enregistrement s'applique à tout le fichier (classeur)
s'il n'est pas possible d'enregistrer seulement une feuille,
automatiquement il n'y a pas d'événement BeforeUpdate pour une
feuille(onglet)
par contre il y a les événememts : change, selection change, calculate
isabelle
Salut à tous.
Je suis surpris de ne pas trouver dans les évenements de feuille un
BeforeUpdate(ByVal Target as Range, Cancel as Boolean), qui
permettrait
de
conserver simplement l'ancienne valeur d'une cellule si sa nouvelle
valeur
entrée par l'utilisateur ne convient pas.
Y a-t-il moyen de simuler celà, ou bien je n'ai pas bien cherché ?
Merci de vos réponses.
--
--
Carpe Diem Quam Minimum Credula Postera
Bicose
Sic Transit Gloria Mundi, et
Arx Tarpeia Capitoli Proxima !!
Salut, avec dans un module standard Public memo Private Sub Worksheet_Change(ByVal Target As Range) Dim mesConditions As Boolean 'pour tester Dim pl As Range mesConditions = True If Target.Address = Range("A1").Address Then If mesConditions Then Target.Value = memo End If End If End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim pl As Range If Target.Address = Range("A1").Address Then memo = Target.Value End If End Sub fonctionne (si saisie par un usager pour évènement SelectionChange)
-- Amicalement. Pascal "il n'y a pas de vent favorable pour celui qui ne sait pas ou il va." Sénèque. http://www.ilyapa.net/excel "Gadget" a écrit dans le message de news: 409f6f59$0$25396$
Merci Isabelle. En fait, je me suis mal exprimé : je voulais parler du BeforeUpdate appliqué
à une cellule ou à une plage. exemple : La modif d'une cellule particulière par l'utilisateur entraine l'execution d'une macro écrite par mes soins qui recalcule et modifie d'autres cellules.
Au cas ou la valeur entrée par l'utilisateur ne convient pas, j'aimerais pouvoir récupérer l'ancienne valeur et la remettre à la place, mais celà semble impossible avec l'évènement _Change, puisqu'il n'y a pas de paramètre Cancel. Y a-t-il une solution ?
-- -- Carpe Diem Quam Minimum Credula Postera Bicose Sic Transit Gloria Mundi, et Arx Tarpeia Capitoli Proxima !! "isabelle" a écrit dans le message de news:
bonjour Gadget,
l'enregistrement s'applique à tout le fichier (classeur) s'il n'est pas possible d'enregistrer seulement une feuille, automatiquement il n'y a pas d'événement BeforeUpdate pour une feuille(onglet) par contre il y a les événememts : change, selection change, calculate
isabelle
Salut à tous. Je suis surpris de ne pas trouver dans les évenements de feuille un BeforeUpdate(ByVal Target as Range, Cancel as Boolean), qui permettrait
de
conserver simplement l'ancienne valeur d'une cellule si sa nouvelle valeur
entrée par l'utilisateur ne convient pas. Y a-t-il moyen de simuler celà, ou bien je n'ai pas bien cherché ? Merci de vos réponses.
-- -- Carpe Diem Quam Minimum Credula Postera Bicose Sic Transit Gloria Mundi, et Arx Tarpeia Capitoli Proxima !!
Gadget
Ah oui pas mal comme solution. Mais je ne crois pas que celà marcherait si une plage est selectionnée plutôt qu'une cellule seule. En fait, j'ai choisi une autre solution :
- J'ai créé une variable range publique appelée Plage_selectionnée
- j'ai ajouté une entrée sur le menu clic droit qui renvoie vers ma procédure :
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Dim Menu_Droit As Object
For Each Menu_Droit In Application._ CommandBars("cell").Controls If Menu_Droit.Caption = "Recalculer" Then _ Menu_Droit.Delete Next Menu_Droit
If Not Intersect(Target, Union(mes_cellules_concernées)) _ Is Nothing Then Set Plage_Selectionnée = Target With Application.CommandBars("cell").Controls.Add _ (Type:=msoControlButton, Temporary:=True) .Caption = "Recalculer" .OnAction = "Recalcul_Salaire" End With End If
End Sub
et ma proc Recalcul_Salaire traite toutes les cellules de Plage_Selectionnée une par une.
voilà voilà. -- -- Carpe Diem Quam Minimum Credula Postera Bicose Sic Transit Gloria Mundi, et Arx Tarpeia Capitoli Proxima !! "Pascal Engelmajer" a écrit dans le message de news:
Salut, avec dans un module standard Public memo Private Sub Worksheet_Change(ByVal Target As Range) Dim mesConditions As Boolean 'pour tester Dim pl As Range mesConditions = True If Target.Address = Range("A1").Address Then If mesConditions Then Target.Value = memo End If End If End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim pl As Range If Target.Address = Range("A1").Address Then memo = Target.Value End If End Sub fonctionne (si saisie par un usager pour évènement SelectionChange)
-- Amicalement. Pascal "il n'y a pas de vent favorable pour celui qui ne sait pas ou il va." Sénèque. http://www.ilyapa.net/excel "Gadget" a écrit dans le message de news: 409f6f59$0$25396$
Merci Isabelle. En fait, je me suis mal exprimé : je voulais parler du BeforeUpdate appliqué
à une cellule ou à une plage. exemple : La modif d'une cellule particulière par l'utilisateur entraine l'execution
d'une macro écrite par mes soins qui recalcule et modifie d'autres cellules.
Au cas ou la valeur entrée par l'utilisateur ne convient pas, j'aimerais pouvoir récupérer l'ancienne valeur et la remettre à la place, mais celà semble impossible avec l'évènement _Change, puisqu'il n'y a pas de paramètre Cancel. Y a-t-il une solution ?
-- -- Carpe Diem Quam Minimum Credula Postera Bicose Sic Transit Gloria Mundi, et Arx Tarpeia Capitoli Proxima !! "isabelle" a écrit dans le message de news:
bonjour Gadget,
l'enregistrement s'applique à tout le fichier (classeur) s'il n'est pas possible d'enregistrer seulement une feuille, automatiquement il n'y a pas d'événement BeforeUpdate pour une feuille(onglet) par contre il y a les événememts : change, selection change, calculate
isabelle
Salut à tous. Je suis surpris de ne pas trouver dans les évenements de feuille un BeforeUpdate(ByVal Target as Range, Cancel as Boolean), qui permettrait
de
conserver simplement l'ancienne valeur d'une cellule si sa nouvelle valeur
entrée par l'utilisateur ne convient pas. Y a-t-il moyen de simuler celà, ou bien je n'ai pas bien cherché ? Merci de vos réponses.
-- -- Carpe Diem Quam Minimum Credula Postera Bicose Sic Transit Gloria Mundi, et Arx Tarpeia Capitoli Proxima !!
Ah oui pas mal comme solution. Mais je ne crois pas que celà marcherait si
une plage est selectionnée plutôt qu'une cellule seule. En fait, j'ai choisi
une autre solution :
- J'ai créé une variable range publique appelée Plage_selectionnée
- j'ai ajouté une entrée sur le menu clic droit qui renvoie vers ma
procédure :
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As
Boolean)
Dim Menu_Droit As Object
For Each Menu_Droit In Application._
CommandBars("cell").Controls
If Menu_Droit.Caption = "Recalculer" Then _
Menu_Droit.Delete
Next Menu_Droit
If Not Intersect(Target, Union(mes_cellules_concernées)) _
Is Nothing Then
Set Plage_Selectionnée = Target
With Application.CommandBars("cell").Controls.Add _
(Type:=msoControlButton, Temporary:=True)
.Caption = "Recalculer"
.OnAction = "Recalcul_Salaire"
End With
End If
End Sub
et ma proc Recalcul_Salaire traite toutes les cellules de Plage_Selectionnée
une par une.
voilà voilà.
--
--
Carpe Diem Quam Minimum Credula Postera
Bicose
Sic Transit Gloria Mundi, et
Arx Tarpeia Capitoli Proxima !!
"Pascal Engelmajer" <pascal.engelmajer@ilyapa_spam.net> a écrit dans le
message de news:unBDAjoNEHA.3572@tk2msftngp13.phx.gbl...
Salut,
avec dans un module standard
Public memo
Private Sub Worksheet_Change(ByVal Target As Range)
Dim mesConditions As Boolean 'pour tester
Dim pl As Range
mesConditions = True
If Target.Address = Range("A1").Address Then
If mesConditions Then
Target.Value = memo
End If
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim pl As Range
If Target.Address = Range("A1").Address Then
memo = Target.Value
End If
End Sub
fonctionne (si saisie par un usager pour évènement SelectionChange)
--
Amicalement.
Pascal
"il n'y a pas de vent favorable pour celui qui ne sait pas ou il va."
Sénèque.
http://www.ilyapa.net/excel
"Gadget" <Gadgetokarim@noos.fr> a écrit dans le message de news:
409f6f59$0$25396$79c14f64@nan-newsreader-03.noos.net...
Merci Isabelle.
En fait, je me suis mal exprimé : je voulais parler du BeforeUpdate
appliqué
à une cellule ou à une plage. exemple :
La modif d'une cellule particulière par l'utilisateur entraine
l'execution
d'une macro écrite par mes soins qui recalcule et modifie d'autres
cellules.
Au cas ou la valeur entrée par l'utilisateur ne convient pas, j'aimerais
pouvoir récupérer l'ancienne valeur et la remettre à la place, mais celà
semble impossible avec l'évènement _Change, puisqu'il n'y a pas de
paramètre Cancel.
Y a-t-il une solution ?
--
--
Carpe Diem Quam Minimum Credula Postera
Bicose
Sic Transit Gloria Mundi, et
Arx Tarpeia Capitoli Proxima !!
"isabelle" <as.isabellevIE@videotron.ca> a écrit dans le message de
news:409F6770.D5942D67@videotron.ca...
bonjour Gadget,
l'enregistrement s'applique à tout le fichier (classeur)
s'il n'est pas possible d'enregistrer seulement une feuille,
automatiquement il n'y a pas d'événement BeforeUpdate pour une
feuille(onglet)
par contre il y a les événememts : change, selection change, calculate
isabelle
Salut à tous.
Je suis surpris de ne pas trouver dans les évenements de feuille un
BeforeUpdate(ByVal Target as Range, Cancel as Boolean), qui
permettrait
de
conserver simplement l'ancienne valeur d'une cellule si sa nouvelle
valeur
entrée par l'utilisateur ne convient pas.
Y a-t-il moyen de simuler celà, ou bien je n'ai pas bien cherché ?
Merci de vos réponses.
--
--
Carpe Diem Quam Minimum Credula Postera
Bicose
Sic Transit Gloria Mundi, et
Arx Tarpeia Capitoli Proxima !!
Ah oui pas mal comme solution. Mais je ne crois pas que celà marcherait si une plage est selectionnée plutôt qu'une cellule seule. En fait, j'ai choisi une autre solution :
- J'ai créé une variable range publique appelée Plage_selectionnée
- j'ai ajouté une entrée sur le menu clic droit qui renvoie vers ma procédure :
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Dim Menu_Droit As Object
For Each Menu_Droit In Application._ CommandBars("cell").Controls If Menu_Droit.Caption = "Recalculer" Then _ Menu_Droit.Delete Next Menu_Droit
If Not Intersect(Target, Union(mes_cellules_concernées)) _ Is Nothing Then Set Plage_Selectionnée = Target With Application.CommandBars("cell").Controls.Add _ (Type:=msoControlButton, Temporary:=True) .Caption = "Recalculer" .OnAction = "Recalcul_Salaire" End With End If
End Sub
et ma proc Recalcul_Salaire traite toutes les cellules de Plage_Selectionnée une par une.
voilà voilà. -- -- Carpe Diem Quam Minimum Credula Postera Bicose Sic Transit Gloria Mundi, et Arx Tarpeia Capitoli Proxima !! "Pascal Engelmajer" a écrit dans le message de news:
Salut, avec dans un module standard Public memo Private Sub Worksheet_Change(ByVal Target As Range) Dim mesConditions As Boolean 'pour tester Dim pl As Range mesConditions = True If Target.Address = Range("A1").Address Then If mesConditions Then Target.Value = memo End If End If End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim pl As Range If Target.Address = Range("A1").Address Then memo = Target.Value End If End Sub fonctionne (si saisie par un usager pour évènement SelectionChange)
-- Amicalement. Pascal "il n'y a pas de vent favorable pour celui qui ne sait pas ou il va." Sénèque. http://www.ilyapa.net/excel "Gadget" a écrit dans le message de news: 409f6f59$0$25396$
Merci Isabelle. En fait, je me suis mal exprimé : je voulais parler du BeforeUpdate appliqué
à une cellule ou à une plage. exemple : La modif d'une cellule particulière par l'utilisateur entraine l'execution
d'une macro écrite par mes soins qui recalcule et modifie d'autres cellules.
Au cas ou la valeur entrée par l'utilisateur ne convient pas, j'aimerais pouvoir récupérer l'ancienne valeur et la remettre à la place, mais celà semble impossible avec l'évènement _Change, puisqu'il n'y a pas de paramètre Cancel. Y a-t-il une solution ?
-- -- Carpe Diem Quam Minimum Credula Postera Bicose Sic Transit Gloria Mundi, et Arx Tarpeia Capitoli Proxima !! "isabelle" a écrit dans le message de news:
bonjour Gadget,
l'enregistrement s'applique à tout le fichier (classeur) s'il n'est pas possible d'enregistrer seulement une feuille, automatiquement il n'y a pas d'événement BeforeUpdate pour une feuille(onglet) par contre il y a les événememts : change, selection change, calculate
isabelle
Salut à tous. Je suis surpris de ne pas trouver dans les évenements de feuille un BeforeUpdate(ByVal Target as Range, Cancel as Boolean), qui permettrait
de
conserver simplement l'ancienne valeur d'une cellule si sa nouvelle valeur
entrée par l'utilisateur ne convient pas. Y a-t-il moyen de simuler celà, ou bien je n'ai pas bien cherché ? Merci de vos réponses.
-- -- Carpe Diem Quam Minimum Credula Postera Bicose Sic Transit Gloria Mundi, et Arx Tarpeia Capitoli Proxima !!