OVH Cloud OVH Cloud

événement feuille

16 réponses
Avatar
dadda
Bonsoir ;
j'ai une feuille avec des donn=E9es sur la colonne A. je=20
souhaiterais que chaque fois que je clique dans une=20
cellule de la colonne B j'aie la valeur de la cellule=20
correspondante de A multipli=E9e par 10% exemple :
A B
15 1.5
26 2.6
14 (Si je clique ici j'aurai 1.4) =20

Merci. =20

6 réponses

1 2
Avatar
Philippe.R
Tu as TOTALEMENT raison Alain, je croyais avoir testé cette version ci, mais que nenni, ça gueule, même
chez moi.
Merci du suivi
--
Amicales Salutations

Retirer A_S_ pour répondre.

"AV" a écrit dans le message de
news:O%
Tu as raison dans l'absolu
sauf erreur, me semble aussi dans le "relatif" ;-)


le "If Intersect(Target, Range("b:b")) Is Nothing" n'exclue pas le test sur
"IsNumeric(Target.Offset(0, -1))" (opérateur "Or")
Donc si la cellule Ax est cliquée ça devrait planter
Pas chez toi ?

AV

me semb
et c'est pourquoi je l'avais fait précéder de cette ligne :
If Intersect(Target, Range("b:b")) Is Nothing Or Not
IsNumeric(Target.Offset(0, -1)) Then Exit Sub

qui réserve l'action à la colonne B
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002

"AV" a écrit dans le message de
news:uxBz%
Ave Philippe,

Aïe, aïe si on clique sur la cellule Ax !
Le "Target.Offset(0, -1))" va pas aimer ;-)

AV












Avatar
dadda
-----Message d'origine-----
Bonsoir,

Aucune des 2, car plantage assuré si la cellule en A
n'est ni vide ni

numérique ;-))

Il n'y a pas d'événement Click pour l'obkjet Worksheet,
mais tu peux

utiliser le double clic ou le clic droit (Ctrl + clic sur
Mac si souris

avec un seul bouton).

Voici le code pour un double clic :

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As
Excel.Range, Cancel As Boolean)

Dim a As Range
If Target.Column = 2 Then
Set a = Target.Offset(, -1)
If IsNumeric(a) And Not IsEmpty(a) Then
Target = a / 10
End If
End If
End Sub

Pour utiliser le clic droit, simplement
remplacer "BeforeDoubleClick"

par "BeforeRightClick".



Salut Philippe,

À chaque fois que je mire deux macros qui font la même
chose,


je me demande tout le temps : «Pourquoi l'une plutôt
que l'autre ?».


Pour ce cas, saurais-tu me dire celle qu'il faudrait
adopter et pourquoi ?



;-)

Serge

"Philippe.R" a écrit dans le
message de news:



Bonsoir,

Dans le module de feuille :

Private Sub Worksheet_SelectionChange(ByVal Target As
Range)



Dim r As Long
If Intersect(Target, Range("b:b")) Is Nothing Then
Exit Sub



r = ActiveCell.Row
ActiveCell.Value = Cells(r, 1).Value / 10
End Sub

le fait
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002
Pour suivre le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)

"dadda" a écrit
dans le message de



news:05fa01c3b6bf$b185a380$
Bonsoir ;
j'ai une feuille avec des données sur la colonne A. je
souhaiterais que chaque fois que je clique dans une
cellule de la colonne B j'aie la valeur de la cellule
correspondante de A multipliée par 10% exemple :
A B
15 1.5
26 2.6
14 (Si je clique ici j'aurai 1.4)

Merci.






--
Cordialement,

Michel Gaboly
http://www.gaboly.com


.Bonsoir tout le monde ;


La discussion des grands tenors au sujet de ma question
est un vrai régal...Je les en remercie. C'est grâce à eux
que les nuls comme moi pourraient comprendre quelque
chose. Il fut un temps où j'avais demandé que les experts
nous donnent chaque fois que possible les explications des
codes qu'ils nous proposent. Certains avaient répondu,
avec raison, qu'il n'était pas question de transformer le
forum en manuel de cours. Ce n'était pas ce que je visais.
Je voulais seulement que pour les formules et macros
particulièrement "teigneuses", on nous donne quelques
petites explications plutôt que de nous le remettre comme
des gris - gris.
Merci beaucoup.

PS : Une autre question : Est-il possible que lorsque le
résultat en colonne B est supérieur 7% de la cellule D1,
la cellule en B qui enregistre ce résultat soit colorée en
rouge.
Exemple :

A B D
1 15 1.5 10
2 26 2.6
3 71 7,1(couleur rouge)



Avatar
Michel Gaboly
Bonsoir,

Je suis assez d'accord avec toi, sur la nécessité de fournir
un minimum d'explications, quand on répond ;-))

Pour la coloration en rouge, la réponse est "oui, c'est
possible", comme presque toujours, mais quel critère
veux-tu utiliser ? Tu parles de résultat "supérieur 7%
de la cellule D1" .

7 % de D1, cela fait 0,7.

S'il s'agit de supérieur à 7 % de D1, toutes les valeurs en
colonne B le sont, pas seulement 7,1.

Peux-tu préciser le mode de calcul ?



-----Message d'origine-----
Bonsoir,

Aucune des 2, car plantage assuré si la cellule en A
n'est ni vide ni

numérique ;-))

Il n'y a pas d'événement Click pour l'obkjet Worksheet,
mais tu peux

utiliser le double clic ou le clic droit (Ctrl + clic sur
Mac si souris

avec un seul bouton).

Voici le code pour un double clic :

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As
Excel.Range, Cancel As Boolean)

Dim a As Range
If Target.Column = 2 Then
Set a = Target.Offset(, -1)
If IsNumeric(a) And Not IsEmpty(a) Then
Target = a / 10
End If
End If
End Sub

Pour utiliser le clic droit, simplement
remplacer "BeforeDoubleClick"

par "BeforeRightClick".



Salut Philippe,

À chaque fois que je mire deux macros qui font la même
chose,


je me demande tout le temps : «Pourquoi l'une plutôt
que l'autre ?».


Pour ce cas, saurais-tu me dire celle qu'il faudrait
adopter et pourquoi ?



;-)

Serge

"Philippe.R" a écrit dans le
message de news:



Bonsoir,

Dans le module de feuille :

Private Sub Worksheet_SelectionChange(ByVal Target As
Range)



Dim r As Long
If Intersect(Target, Range("b:b")) Is Nothing Then
Exit Sub



r = ActiveCell.Row
ActiveCell.Value = Cells(r, 1).Value / 10
End Sub

le fait
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002
Pour suivre le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)

"dadda" a écrit
dans le message de



news:05fa01c3b6bf$b185a380$
Bonsoir ;
j'ai une feuille avec des données sur la colonne A. je
souhaiterais que chaque fois que je clique dans une
cellule de la colonne B j'aie la valeur de la cellule
correspondante de A multipliée par 10% exemple :
A B
15 1.5
26 2.6
14 (Si je clique ici j'aurai 1.4)

Merci.






--
Cordialement,

Michel Gaboly
http://www.gaboly.com


.Bonsoir tout le monde ;


La discussion des grands tenors au sujet de ma question
est un vrai régal...Je les en remercie. C'est grâce à eux
que les nuls comme moi pourraient comprendre quelque
chose. Il fut un temps où j'avais demandé que les experts
nous donnent chaque fois que possible les explications des
codes qu'ils nous proposent. Certains avaient répondu,
avec raison, qu'il n'était pas question de transformer le
forum en manuel de cours. Ce n'était pas ce que je visais.
Je voulais seulement que pour les formules et macros
particulièrement "teigneuses", on nous donne quelques
petites explications plutôt que de nous le remettre comme
des gris - gris.
Merci beaucoup.

PS : Une autre question : Est-il possible que lorsque le
résultat en colonne B est supérieur 7% de la cellule D1,
la cellule en B qui enregistre ce résultat soit colorée en
rouge.
Exemple :

A B D
1 15 1.5 10
2 26 2.6
3 71 7,1(couleur rouge)


--
Cordialement,

Michel Gaboly
http://www.gaboly.com




Avatar
dadda
-----Message d'origine-----
Bonsoir,

Je suis assez d'accord avec toi, sur la nécessité de
fournir

un minimum d'explications, quand on répond ;-))

Pour la coloration en rouge, la réponse est "oui, c'est
possible", comme presque toujours, mais quel critère
veux-tu utiliser ? Tu parles de résultat "supérieur 7%
de la cellule D1" .

7 % de D1, cela fait 0,7.

S'il s'agit de supérieur à 7 % de D1, toutes les valeurs
en

colonne B le sont, pas seulement 7,1.

Peux-tu préciser le mode de calcul ?



-----Message d'origine-----
Bonsoir,

Aucune des 2, car plantage assuré si la cellule en A
n'est ni vide ni

numérique ;-))

Il n'y a pas d'événement Click pour l'obkjet Worksheet,
mais tu peux

utiliser le double clic ou le clic droit (Ctrl + clic
sur



Mac si souris
avec un seul bouton).

Voici le code pour un double clic :

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As
Excel.Range, Cancel As Boolean)

Dim a As Range
If Target.Column = 2 Then
Set a = Target.Offset(, -1)
If IsNumeric(a) And Not IsEmpty(a) Then
Target = a / 10
End If
End If
End Sub

Pour utiliser le clic droit, simplement
remplacer "BeforeDoubleClick"

par "BeforeRightClick".



Salut Philippe,

À chaque fois que je mire deux macros qui font la
même




chose,
je me demande tout le temps : «Pourquoi l'une plutôt
que l'autre ?».


Pour ce cas, saurais-tu me dire celle qu'il faudrait
adopter et pourquoi ?



;-)

Serge

"Philippe.R" a écrit dans le
message de news:



Bonsoir,

Dans le module de feuille :

Private Sub Worksheet_SelectionChange(ByVal Target
As





Range)
Dim r As Long
If Intersect(Target, Range("b:b")) Is Nothing Then
Exit Sub



r = ActiveCell.Row
ActiveCell.Value = Cells(r, 1).Value / 10
End Sub

le fait
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002
Pour suivre le forum :

news://msnews.microsoft.com/microsoft.public.fr.excel





(Voulez-vous vous abonner ? -> Oui)

"dadda" a
écrit





dans le message de
news:05fa01c3b6bf$b185a380$
Bonsoir ;
j'ai une feuille avec des données sur la colonne
A. je





souhaiterais que chaque fois que je clique dans une
cellule de la colonne B j'aie la valeur de la
cellule





correspondante de A multipliée par 10% exemple :
A B
15 1.5
26 2.6
14 (Si je clique ici j'aurai 1.4)

Merci.






--
Cordialement,

Michel Gaboly
http://www.gaboly.com


.Bonsoir tout le monde ;


La discussion des grands tenors au sujet de ma question
est un vrai régal...Je les en remercie. C'est grâce à
eux


que les nuls comme moi pourraient comprendre quelque
chose. Il fut un temps où j'avais demandé que les
experts


nous donnent chaque fois que possible les explications
des


codes qu'ils nous proposent. Certains avaient répondu,
avec raison, qu'il n'était pas question de transformer
le


forum en manuel de cours. Ce n'était pas ce que je
visais.


Je voulais seulement que pour les formules et macros
particulièrement "teigneuses", on nous donne quelques
petites explications plutôt que de nous le remettre
comme


des gris - gris.
Merci beaucoup.

PS : Une autre question : Est-il possible que lorsque le
résultat en colonne B est supérieur 7% de la cellule D1,
la cellule en B qui enregistre ce résultat soit colorée
en


rouge.
Exemple :

A B D
1 15 1.5 10
2 26 2.6
3 71 7,1(couleur rouge)


--
Cordialement,

Michel Gaboly
http://www.gaboly.com


.Bonsoir Michel;


C'était une erreur de ma part. En D1 il fallait inscrire
100 et non pas 10.

Au sujet des explications. Même si je n'interviens pas
souvent sur le forum, je le suis régulièrement (et je
visite aussi ton site pour lequel je te félicite). Je dois
dire que tes réponses sont souvent (Toujours) accompagnées
d'explications utiles.

Merci pour tout.







Avatar
Michel Gaboly
Re,

Merci pour tous ces compliments ;-))

Il faut faire une mise en forme conditionnelle (MEFC),
accessible par le menu Format.

1 - Sélectionne les cellules concernées (B1:B3 dans
ton exemple).

2 - Sélectionne MEFC dans le menu "Format".

3 - Dans le cadre "Condition 1" clique sur "La valeur
de la cellule est". C'est un menu.

4 - Sélectionne "La formule est" dans le menu.

5 - Entre la formule :

± > $D$1 * 7%

Attention aux dollars, "$" : B1 sans dollar pour
indiquer une référence relative : pour détermi-
ner la couleur de B1, on utilise la valeur de B1,
pour la couleur de B2, on utilise la valeur de B2...
Par contre, pour toutes les cellules, la compa-
raison se fait par rapport à D1 (et non D2, D3,
...) ; une référence absolue est donc nécessaire,
d'où les "$".

6 - Clique sur le bouton "Format", puis sur l'on-
glet "Motif" et/ou "Police" pour choisir la ou les
couleur(s).

7 - Valide avec "OK".

NB - Tu peux également nommer la cellule D1
(Insertion, Noms, Définir...) et utiliser le nom
dans la formule de la MEFC.



-----Message d'origine-----
Bonsoir,

Je suis assez d'accord avec toi, sur la nécessité de
fournir

un minimum d'explications, quand on répond ;-))

Pour la coloration en rouge, la réponse est "oui, c'est
possible", comme presque toujours, mais quel critère
veux-tu utiliser ? Tu parles de résultat "supérieur 7%
de la cellule D1" .

7 % de D1, cela fait 0,7.

S'il s'agit de supérieur à 7 % de D1, toutes les valeurs
en

colonne B le sont, pas seulement 7,1.

Peux-tu préciser le mode de calcul ?





PS : Une autre question : Est-il possible que lorsque le
résultat en colonne B est supérieur 7% de la cellule D1,
la cellule en B qui enregistre ce résultat soit colorée
en


rouge.
Exemple :

A B D
1 15 1.5 10
2 26 2.6
3 71 7,1(couleur rouge)


--
Cordialement,

Michel Gaboly
http://www.gaboly.com


.Bonsoir Michel;


C'était une erreur de ma part. En D1 il fallait inscrire
100 et non pas 10.

Au sujet des explications. Même si je n'interviens pas
souvent sur le forum, je le suis régulièrement (et je
visite aussi ton site pour lequel je te félicite). Je dois
dire que tes réponses sont souvent (Toujours) accompagnées
d'explications utiles.

Merci pour tout.




--
Cordialement,

Michel Gaboly
http://www.gaboly.com



Avatar
Philippe.R
Bonsoir Dadda,
Sois sympa s'il te plait, répond au dessus de l'historique, comme ici, ou bien élague sec dans le corps
du message.
Vais bientôt avoir usé ma roulette à ce rythme là !
;o)))
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002

"dadda" a écrit dans le message de
news:020601c3b787$6d9b0610$

-----Message d'origine-----
Bonsoir,

Je suis assez d'accord avec toi, sur la nécessité de
fournir

un minimum d'explications, quand on répond ;-))

Pour la coloration en rouge, la réponse est "oui, c'est
possible", comme presque toujours, mais quel critère
veux-tu utiliser ? Tu parles de résultat "supérieur 7%
de la cellule D1" .

7 % de D1, cela fait 0,7.

S'il s'agit de supérieur à 7 % de D1, toutes les valeurs
en

colonne B le sont, pas seulement 7,1.

Peux-tu préciser le mode de calcul ?



-----Message d'origine-----
Bonsoir,

Aucune des 2, car plantage assuré si la cellule en A
n'est ni vide ni

numérique ;-))

Il n'y a pas d'événement Click pour l'obkjet Worksheet,
mais tu peux

utiliser le double clic ou le clic droit (Ctrl + clic
sur



Mac si souris
avec un seul bouton).

Voici le code pour un double clic :

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As
Excel.Range, Cancel As Boolean)

Dim a As Range
If Target.Column = 2 Then
Set a = Target.Offset(, -1)
If IsNumeric(a) And Not IsEmpty(a) Then
Target = a / 10
End If
End If
End Sub

Pour utiliser le clic droit, simplement
remplacer "BeforeDoubleClick"

par "BeforeRightClick".



Salut Philippe,

À chaque fois que je mire deux macros qui font la
même




chose,
je me demande tout le temps : «Pourquoi l'une plutôt
que l'autre ?».


Pour ce cas, saurais-tu me dire celle qu'il faudrait
adopter et pourquoi ?



;-)

Serge

"Philippe.R" a écrit dans le
message de news:



Bonsoir,

Dans le module de feuille :

Private Sub Worksheet_SelectionChange(ByVal Target
As





Range)
Dim r As Long
If Intersect(Target, Range("b:b")) Is Nothing Then
Exit Sub



r = ActiveCell.Row
ActiveCell.Value = Cells(r, 1).Value / 10
End Sub

le fait
--
Amicales Salutations

Retirer A_S_ pour répondre.
XL97 / XL2002
Pour suivre le forum :

news://msnews.microsoft.com/microsoft.public.fr.excel





(Voulez-vous vous abonner ? -> Oui)

"dadda" a
écrit





dans le message de
news:05fa01c3b6bf$b185a380$
Bonsoir ;
j'ai une feuille avec des données sur la colonne
A. je





souhaiterais que chaque fois que je clique dans une
cellule de la colonne B j'aie la valeur de la
cellule





correspondante de A multipliée par 10% exemple :
A B
15 1.5
26 2.6
14 (Si je clique ici j'aurai 1.4)

Merci.






--
Cordialement,

Michel Gaboly
http://www.gaboly.com


.Bonsoir tout le monde ;


La discussion des grands tenors au sujet de ma question
est un vrai régal...Je les en remercie. C'est grâce à
eux


que les nuls comme moi pourraient comprendre quelque
chose. Il fut un temps où j'avais demandé que les
experts


nous donnent chaque fois que possible les explications
des


codes qu'ils nous proposent. Certains avaient répondu,
avec raison, qu'il n'était pas question de transformer
le


forum en manuel de cours. Ce n'était pas ce que je
visais.


Je voulais seulement que pour les formules et macros
particulièrement "teigneuses", on nous donne quelques
petites explications plutôt que de nous le remettre
comme


des gris - gris.
Merci beaucoup.

PS : Une autre question : Est-il possible que lorsque le
résultat en colonne B est supérieur 7% de la cellule D1,
la cellule en B qui enregistre ce résultat soit colorée
en


rouge.
Exemple :

A B D
1 15 1.5 10
2 26 2.6
3 71 7,1(couleur rouge)


--
Cordialement,

Michel Gaboly
http://www.gaboly.com


.Bonsoir Michel;


C'était une erreur de ma part. En D1 il fallait inscrire
100 et non pas 10.

Au sujet des explications. Même si je n'interviens pas
souvent sur le forum, je le suis régulièrement (et je
visite aussi ton site pour lequel je te félicite). Je dois
dire que tes réponses sont souvent (Toujours) accompagnées
d'explications utiles.

Merci pour tout.







1 2