Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Changement valeur cellule

6 réponses
Avatar
Flac
Bonjour à tous,
Excel 2000,
Je voudrais déclencher une procédure chaque fois que la valeur d'une cellule
est modifiée à la suite d'un recalcul.

Par exemple, j'ai une formule d'addition à la cellule C31.
Quelle serait la synthaxe à utiliser pour déclencher une procédure si la
valeur de cette cellule est modifiée?

Merci

Flac

6 réponses

Avatar
JB
Bonjour,

Utiliser l'événnement Calculate()

Private Sub Worksheet_Calculate()
ActiveSheet.Shapes("monshape").Visible = ([A10] > 100)
End Sub

http://boisgontierjacques.free.fr/pages_site/evenements.htm#calculate

JB
http://boisgontierjacques.free.fr

On 23 juil, 17:55, "Flac" wrote:
Bonjour à tous,
Excel 2000,
Je voudrais déclencher une procédure chaque fois que la valeur d'une cellule
est modifiée à la suite d'un recalcul.

Par exemple, j'ai une formule d'addition à la cellule C31.
Quelle serait la synthaxe à utiliser pour déclencher une procédure si la
valeur de cette cellule est modifiée?

Merci

Flac


Avatar
Flac
Bonjour,
J'ai tenté d'adapter les procédures suivantes tirées de la page
evenements.htm#WorkSheetChange de ton site.

Private Sub Worksheet_Calculate()
If [A8] <> CDbl([mémo]) Then
MsgBox [mémo]
ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) &
[A8] & Chr(34)
End If
End Sub

Private Sub Workbook_Open()
ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) &
Sheets(2).[A8] & Chr(34)
End Sub

en faisant les modifications comme suit:

Private Sub Worksheet_Calculate() "Dans le module de Feuil5(Together)"
If [c31] <> CDbl([mémo]) Then
MsgBox [mémo]
ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) &
[c31] & Chr(34)
End If
End Sub

Private Sub Workbook_Open() "Dans le module de ThisWorkbook"

Sheets("menu").Select
ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) &
Sheets(5).[c31] & Chr(34)
End Sub



J'ai modifié A8 par C31, et Sheets(2) pour Sheets(5) pour les adapter.

Je m'aperçois que chaque fois que je modifie une cellule quelle quelle soit,
j'ai un message:

Erreur d'exécution '13':

Incompatibilité de type

Pourtant, la valeur de la celule C31 n'a pas changé.

Pourrais-tu, s'il te plaît, me dépanner.



Merci à l'avance



Flac





"JB" a écrit dans le message de news:

Bonjour,

Utiliser l'événnement Calculate()

Private Sub Worksheet_Calculate()
ActiveSheet.Shapes("monshape").Visible = ([A10] > 100)
End Sub

http://boisgontierjacques.free.fr/pages_site/evenements.htm#calculate

JB
http://boisgontierjacques.free.fr

On 23 juil, 17:55, "Flac" wrote:
Bonjour à tous,
Excel 2000,
Je voudrais déclencher une procédure chaque fois que la valeur d'une
cellule
est modifiée à la suite d'un recalcul.

Par exemple, j'ai une formule d'addition à la cellule C31.
Quelle serait la synthaxe à utiliser pour déclencher une procédure si la
valeur de cette cellule est modifiée?

Merci

Flac


Avatar
Flac
Bonjour,
J'aimerais savoir dans le cadre de "Worksheet_Calculate()" s'il est possible
de
limiter le déclenchement de la procédure seulement si la valeur de la
cellule C31
est modifiée.
Merci

Flac




"Flac" a écrit dans le message de news:

Bonjour,
J'ai tenté d'adapter les procédures suivantes tirées de la page
evenements.htm#WorkSheetChange de ton site.

Private Sub Worksheet_Calculate()
If [A8] <> CDbl([mémo]) Then
MsgBox [mémo]
ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) &
[A8] & Chr(34)
End If
End Sub

Private Sub Workbook_Open()
ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) &
Sheets(2).[A8] & Chr(34)
End Sub

en faisant les modifications comme suit:

Private Sub Worksheet_Calculate() "Dans le module de Feuil5(Together)"
If [c31] <> CDbl([mémo]) Then
MsgBox [mémo]
ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) &
[c31] & Chr(34)
End If
End Sub

Private Sub Workbook_Open() "Dans le module de ThisWorkbook"

Sheets("menu").Select
ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) &
Sheets(5).[c31] & Chr(34)
End Sub



J'ai modifié A8 par C31, et Sheets(2) pour Sheets(5) pour les adapter.

Je m'aperçois que chaque fois que je modifie une cellule quelle quelle
soit, j'ai un message:

Erreur d'exécution '13':

Incompatibilité de type

Pourtant, la valeur de la celule C31 n'a pas changé.

Pourrais-tu, s'il te plaît, me dépanner.



Merci à l'avance



Flac





"JB" a écrit dans le message de news:

Bonjour,

Utiliser l'événnement Calculate()

Private Sub Worksheet_Calculate()
ActiveSheet.Shapes("monshape").Visible = ([A10] > 100)
End Sub

http://boisgontierjacques.free.fr/pages_site/evenements.htm#calculate

JB
http://boisgontierjacques.free.fr

On 23 juil, 17:55, "Flac" wrote:
Bonjour à tous,
Excel 2000,
Je voudrais déclencher une procédure chaque fois que la valeur d'une
cellule
est modifiée à la suite d'un recalcul.

Par exemple, j'ai une formule d'addition à la cellule C31.
Quelle serait la synthaxe à utiliser pour déclencher une procédure si la
valeur de cette cellule est modifiée?

Merci

Flac






Avatar
JB
Bonjour,

On vérifie si [A8] - qui contient =Somme(A2:A6) - a changé de valeur
lors d'un recalcul:

Private Sub Workbook_Open()
ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(3 4)
& Sheets(1).[A8] & Chr(34)
End Sub

Private Sub Worksheet_Calculate()
If [A8] <> Val([mémo]) Then
MsgBox [mémo]
ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr( 34)
& Sheets(1).[A8] & Chr(34)
End If
End Sub

http://cjoint.com/?hyhwFfEhpf

JB
http://boisgontierjacques.free.fr


On 23 juil, 22:29, "Flac" wrote:
Bonjour,
J'aimerais savoir dans le cadre de "Worksheet_Calculate()" s'il est possi ble
de
limiter le déclenchement de la procédure seulement si la valeur de la
cellule C31
est modifiée.
Merci

Flac

"Flac" a écrit dans le message de news:




> Bonjour,
> J'ai tenté d'adapter les procédures suivantes tirées de la page
> evenements.htm#WorkSheetChange de ton site.

> Private Sub Worksheet_Calculate()
>   If [A8] <> CDbl([mémo]) Then
>      MsgBox [mémo]
>      ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:=" =" & Chr(34) &
> [A8] & Chr(34)
>   End If
> End Sub

> Private Sub Workbook_Open()
>   ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) &
> Sheets(2).[A8] & Chr(34)
> End Sub

> en faisant les modifications comme suit:

> Private Sub Worksheet_Calculate()   "Dans le module de Feuil5(Togethe r)"
>   If [c31] <> CDbl([mémo]) Then
>      MsgBox [mémo]
>      ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:=" =" & Chr(34) &
> [c31] & Chr(34)
>   End If
> End Sub

> Private Sub Workbook_Open()  "Dans le module de ThisWorkbook"

>    Sheets("menu").Select
> ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr( 34) &
> Sheets(5).[c31] & Chr(34)
> End Sub

> J'ai modifié A8 par C31, et Sheets(2) pour Sheets(5) pour les adapter .

> Je m'aperçois que chaque fois que je modifie une cellule quelle quell e
> soit, j'ai un message:

> Erreur d'exécution '13':

> Incompatibilité de type

> Pourtant, la valeur de la celule C31 n'a pas changé.

> Pourrais-tu, s'il te plaît, me dépanner.

> Merci à l'avance

> Flac

> "JB" a écrit dans le message de news:
>
> Bonjour,

> Utiliser l'événnement Calculate()

> Private Sub Worksheet_Calculate()
>   ActiveSheet.Shapes("monshape").Visible = ([A10] > 100)
> End Sub

>http://boisgontierjacques.free.fr/pages_site/evenements.htm#calculate

> JB
>http://boisgontierjacques.free.fr

> On 23 juil, 17:55, "Flac" wrote:
>> Bonjour à tous,
>> Excel 2000,
>> Je voudrais déclencher une procédure chaque fois que la valeur d'u ne
>> cellule
>> est modifiée à la suite d'un recalcul.

>> Par exemple, j'ai une formule d'addition à la cellule C31.
>> Quelle serait la synthaxe à utiliser pour déclencher une procédu re si la
>> valeur de cette cellule est modifiée?

>> Merci

>> Flac- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -


Avatar
Jacquouille
Bonjour
Perso, par macro, je ferais copier la valeur de la cel (C31) en D31.
Puis lancer l'addition
Ensuite, dans la procédure qui est lancée après la nouvelle addition, mettre
en début
Si [D31]=[C31] ----> ouste dehors, sinon...
procédure

Si ça va, alors ça va, sinon, taper sur un autre.-))
--
Bien amicalmement,
"Le vin est au repas ce que le parfum est à la femme."

Jacquouille.

"Flac" a écrit dans le message de news:

Bonjour,
J'aimerais savoir dans le cadre de "Worksheet_Calculate()" s'il est
possible de
limiter le déclenchement de la procédure seulement si la valeur de la
cellule C31
est modifiée.
Merci

Flac




"Flac" a écrit dans le message de news:

Bonjour,
J'ai tenté d'adapter les procédures suivantes tirées de la page
evenements.htm#WorkSheetChange de ton site.

Private Sub Worksheet_Calculate()
If [A8] <> CDbl([mémo]) Then
MsgBox [mémo]
ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) &
[A8] & Chr(34)
End If
End Sub

Private Sub Workbook_Open()
ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) &
Sheets(2).[A8] & Chr(34)
End Sub

en faisant les modifications comme suit:

Private Sub Worksheet_Calculate() "Dans le module de Feuil5(Together)"
If [c31] <> CDbl([mémo]) Then
MsgBox [mémo]
ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) &
[c31] & Chr(34)
End If
End Sub

Private Sub Workbook_Open() "Dans le module de ThisWorkbook"

Sheets("menu").Select
ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) &
Sheets(5).[c31] & Chr(34)
End Sub



J'ai modifié A8 par C31, et Sheets(2) pour Sheets(5) pour les adapter.

Je m'aperçois que chaque fois que je modifie une cellule quelle quelle
soit, j'ai un message:

Erreur d'exécution '13':

Incompatibilité de type

Pourtant, la valeur de la celule C31 n'a pas changé.

Pourrais-tu, s'il te plaît, me dépanner.



Merci à l'avance



Flac





"JB" a écrit dans le message de news:

Bonjour,

Utiliser l'événnement Calculate()

Private Sub Worksheet_Calculate()
ActiveSheet.Shapes("monshape").Visible = ([A10] > 100)
End Sub

http://boisgontierjacques.free.fr/pages_site/evenements.htm#calculate

JB
http://boisgontierjacques.free.fr

On 23 juil, 17:55, "Flac" wrote:
Bonjour à tous,
Excel 2000,
Je voudrais déclencher une procédure chaque fois que la valeur d'une
cellule
est modifiée à la suite d'un recalcul.

Par exemple, j'ai une formule d'addition à la cellule C31.
Quelle serait la synthaxe à utiliser pour déclencher une procédure si la
valeur de cette cellule est modifiée?

Merci

Flac










Avatar
Flac
Merci
Ça fonctionne

Flac




"JB" a écrit dans le message de news:

Bonjour,

On vérifie si [A8] - qui contient =Somme(A2:A6) - a changé de valeur
lors d'un recalcul:

Private Sub Workbook_Open()
ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34)
& Sheets(1).[A8] & Chr(34)
End Sub

Private Sub Worksheet_Calculate()
If [A8] <> Val([mémo]) Then
MsgBox [mémo]
ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34)
& Sheets(1).[A8] & Chr(34)
End If
End Sub

http://cjoint.com/?hyhwFfEhpf

JB
http://boisgontierjacques.free.fr


On 23 juil, 22:29, "Flac" wrote:
Bonjour,
J'aimerais savoir dans le cadre de "Worksheet_Calculate()" s'il est
possible
de
limiter le déclenchement de la procédure seulement si la valeur de la
cellule C31
est modifiée.
Merci

Flac

"Flac" a écrit dans le message de news:




> Bonjour,
> J'ai tenté d'adapter les procédures suivantes tirées de la page
> evenements.htm#WorkSheetChange de ton site.

> Private Sub Worksheet_Calculate()
> If [A8] <> CDbl([mémo]) Then
> MsgBox [mémo]
> ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) &
> [A8] & Chr(34)
> End If
> End Sub

> Private Sub Workbook_Open()
> ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) &
> Sheets(2).[A8] & Chr(34)
> End Sub

> en faisant les modifications comme suit:

> Private Sub Worksheet_Calculate() "Dans le module de Feuil5(Together)"
> If [c31] <> CDbl([mémo]) Then
> MsgBox [mémo]
> ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) &
> [c31] & Chr(34)
> End If
> End Sub

> Private Sub Workbook_Open() "Dans le module de ThisWorkbook"

> Sheets("menu").Select
> ActiveWorkbook.Names.Add Name:="mémo", RefersToR1C1:="=" & Chr(34) &
> Sheets(5).[c31] & Chr(34)
> End Sub

> J'ai modifié A8 par C31, et Sheets(2) pour Sheets(5) pour les adapter.

> Je m'aperçois que chaque fois que je modifie une cellule quelle quelle
> soit, j'ai un message:

> Erreur d'exécution '13':

> Incompatibilité de type

> Pourtant, la valeur de la celule C31 n'a pas changé.

> Pourrais-tu, s'il te plaît, me dépanner.

> Merci à l'avance

> Flac

> "JB" a écrit dans le message de news:
>
> Bonjour,

> Utiliser l'événnement Calculate()

> Private Sub Worksheet_Calculate()
> ActiveSheet.Shapes("monshape").Visible = ([A10] > 100)
> End Sub

>http://boisgontierjacques.free.fr/pages_site/evenements.htm#calculate

> JB
>http://boisgontierjacques.free.fr

> On 23 juil, 17:55, "Flac" wrote:
>> Bonjour à tous,
>> Excel 2000,
>> Je voudrais déclencher une procédure chaque fois que la valeur d'une
>> cellule
>> est modifiée à la suite d'un recalcul.

>> Par exemple, j'ai une formule d'addition à la cellule C31.
>> Quelle serait la synthaxe à utiliser pour déclencher une procédure si
>> la
>> valeur de cette cellule est modifiée?

>> Merci

>> Flac- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -