j'ai une macro de mise à jour qui m'incrit dans toutes les feuilles d'un
classeur, un nouveau nombre dans la cellule A1.
Quand je lance cette mise à jour toute simple, l'action paste est intercepté
par
Private Sub Worksheet_Change(ByVal Target As Range)
dans laquelle je teste si le changement à eu lieu sur telle ou telle cellule
pour effectuer une action particulaire suivant les valeurs rentrées et
suivant la localisation de cette modification. Le problème c'est que dans le
cas présent de ma mise à jour, je n'ai absolument pas besoin que
Worksheet_Change intervienne et me ralentisse l'exécution de la mise à jour
par ces tests.
Je cherche donc une façon de faire pour dévalider Worksheet_Change avec le
lancement de ma mise à jour pour ensuite la remettre en fonction à la fin de
cette mise à jour.
J'ai essayé de modifier le nom de Worksheet_change en Workseet_Change2 en
mode débogage, mais Excel veut réinitialiser mon projet quand je tente cette
action :(
Je sais pas si j'ai été bien claire dans mes explications....c'est pas sûr
:-)
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
JLuc
*Bonjour Bartez*, Dans la procedure : Private Sub Worksheet_Change(ByVal Target As Range) If Sheets(1).Range("A2") = 1 Then Sheets(1).Range("A2") = "" Else 'le reste de ton code ... ... End If End Sub
Dans ta macro de maj : Sheets(1).Range("A2") = 1 ... ... ... La cellule est a adaptee en fonction de tes donnees, il vaut mieux que ce soit une cellule libre :oÞ
Bonjour,
j'ai une macro de mise à jour qui m'incrit dans toutes les feuilles d'un classeur, un nouveau nombre dans la cellule A1.
Quand je lance cette mise à jour toute simple, l'action paste est intercepté par Private Sub Worksheet_Change(ByVal Target As Range) dans laquelle je teste si le changement à eu lieu sur telle ou telle cellule pour effectuer une action particulaire suivant les valeurs rentrées et suivant la localisation de cette modification. Le problème c'est que dans le cas présent de ma mise à jour, je n'ai absolument pas besoin que Worksheet_Change intervienne et me ralentisse l'exécution de la mise à jour par ces tests.
Je cherche donc une façon de faire pour dévalider Worksheet_Change avec le lancement de ma mise à jour pour ensuite la remettre en fonction à la fin de cette mise à jour.
J'ai essayé de modifier le nom de Worksheet_change en Workseet_Change2 en mode débogage, mais Excel veut réinitialiser mon projet quand je tente cette action :(
Je sais pas si j'ai été bien claire dans mes explications....c'est pas sûr :-)
Merci de votre aide Bartez
-- ____ ( O | O ) -- _oooO_ JLuc _Oooo_
O-O
*Bonjour Bartez*,
Dans la procedure :
Private Sub Worksheet_Change(ByVal Target As Range)
If Sheets(1).Range("A2") = 1 Then
Sheets(1).Range("A2") = ""
Else
'le reste de ton code
...
...
End If
End Sub
Dans ta macro de maj :
Sheets(1).Range("A2") = 1
...
...
...
La cellule est a adaptee en fonction de tes donnees, il vaut mieux que
ce soit une cellule libre :oÞ
Bonjour,
j'ai une macro de mise à jour qui m'incrit dans toutes les feuilles d'un
classeur, un nouveau nombre dans la cellule A1.
Quand je lance cette mise à jour toute simple, l'action paste est intercepté
par
Private Sub Worksheet_Change(ByVal Target As Range)
dans laquelle je teste si le changement à eu lieu sur telle ou telle cellule
pour effectuer une action particulaire suivant les valeurs rentrées et
suivant la localisation de cette modification. Le problème c'est que dans le
cas présent de ma mise à jour, je n'ai absolument pas besoin que
Worksheet_Change intervienne et me ralentisse l'exécution de la mise à jour
par ces tests.
Je cherche donc une façon de faire pour dévalider Worksheet_Change avec le
lancement de ma mise à jour pour ensuite la remettre en fonction à la fin de
cette mise à jour.
J'ai essayé de modifier le nom de Worksheet_change en Workseet_Change2 en
mode débogage, mais Excel veut réinitialiser mon projet quand je tente cette
action :(
Je sais pas si j'ai été bien claire dans mes explications....c'est pas sûr
:-)
*Bonjour Bartez*, Dans la procedure : Private Sub Worksheet_Change(ByVal Target As Range) If Sheets(1).Range("A2") = 1 Then Sheets(1).Range("A2") = "" Else 'le reste de ton code ... ... End If End Sub
Dans ta macro de maj : Sheets(1).Range("A2") = 1 ... ... ... La cellule est a adaptee en fonction de tes donnees, il vaut mieux que ce soit une cellule libre :oÞ
Bonjour,
j'ai une macro de mise à jour qui m'incrit dans toutes les feuilles d'un classeur, un nouveau nombre dans la cellule A1.
Quand je lance cette mise à jour toute simple, l'action paste est intercepté par Private Sub Worksheet_Change(ByVal Target As Range) dans laquelle je teste si le changement à eu lieu sur telle ou telle cellule pour effectuer une action particulaire suivant les valeurs rentrées et suivant la localisation de cette modification. Le problème c'est que dans le cas présent de ma mise à jour, je n'ai absolument pas besoin que Worksheet_Change intervienne et me ralentisse l'exécution de la mise à jour par ces tests.
Je cherche donc une façon de faire pour dévalider Worksheet_Change avec le lancement de ma mise à jour pour ensuite la remettre en fonction à la fin de cette mise à jour.
J'ai essayé de modifier le nom de Worksheet_change en Workseet_Change2 en mode débogage, mais Excel veut réinitialiser mon projet quand je tente cette action :(
Je sais pas si j'ai été bien claire dans mes explications....c'est pas sûr :-)
Merci de votre aide Bartez
-- ____ ( O | O ) -- _oooO_ JLuc _Oooo_
O-O
michdenis
Bonjour Bartez,
En début de macro, tu inscris cette ligne de code qui a pour but d'inhiber les procédures événementielles de l'application Excel.
Application.EnableEvents = False
Et surtout ne pas oublier de remettre la valeur de cette ligne à true à la fin de la procédure.
Application.EnableEvents = True
Salutations!
"Bartez" a écrit dans le message de news: Bonjour,
j'ai une macro de mise à jour qui m'incrit dans toutes les feuilles d'un classeur, un nouveau nombre dans la cellule A1.
Quand je lance cette mise à jour toute simple, l'action paste est intercepté par Private Sub Worksheet_Change(ByVal Target As Range) dans laquelle je teste si le changement à eu lieu sur telle ou telle cellule pour effectuer une action particulaire suivant les valeurs rentrées et suivant la localisation de cette modification. Le problème c'est que dans le cas présent de ma mise à jour, je n'ai absolument pas besoin que Worksheet_Change intervienne et me ralentisse l'exécution de la mise à jour par ces tests.
Je cherche donc une façon de faire pour dévalider Worksheet_Change avec le lancement de ma mise à jour pour ensuite la remettre en fonction à la fin de cette mise à jour.
J'ai essayé de modifier le nom de Worksheet_change en Workseet_Change2 en mode débogage, mais Excel veut réinitialiser mon projet quand je tente cette action :(
Je sais pas si j'ai été bien claire dans mes explications....c'est pas sûr :-)
Merci de votre aide Bartez
Bonjour Bartez,
En début de macro, tu inscris cette ligne de code
qui a pour but d'inhiber les procédures événementielles
de l'application Excel.
Application.EnableEvents = False
Et surtout ne pas oublier de remettre la valeur de cette ligne à true
à la fin de la procédure.
Application.EnableEvents = True
Salutations!
"Bartez" <Bartez@free.fr> a écrit dans le message de news: eOpyzW9WGHA.1200@TK2MSFTNGP03.phx.gbl...
Bonjour,
j'ai une macro de mise à jour qui m'incrit dans toutes les feuilles d'un
classeur, un nouveau nombre dans la cellule A1.
Quand je lance cette mise à jour toute simple, l'action paste est intercepté
par
Private Sub Worksheet_Change(ByVal Target As Range)
dans laquelle je teste si le changement à eu lieu sur telle ou telle cellule
pour effectuer une action particulaire suivant les valeurs rentrées et
suivant la localisation de cette modification. Le problème c'est que dans le
cas présent de ma mise à jour, je n'ai absolument pas besoin que
Worksheet_Change intervienne et me ralentisse l'exécution de la mise à jour
par ces tests.
Je cherche donc une façon de faire pour dévalider Worksheet_Change avec le
lancement de ma mise à jour pour ensuite la remettre en fonction à la fin de
cette mise à jour.
J'ai essayé de modifier le nom de Worksheet_change en Workseet_Change2 en
mode débogage, mais Excel veut réinitialiser mon projet quand je tente cette
action :(
Je sais pas si j'ai été bien claire dans mes explications....c'est pas sûr
:-)
En début de macro, tu inscris cette ligne de code qui a pour but d'inhiber les procédures événementielles de l'application Excel.
Application.EnableEvents = False
Et surtout ne pas oublier de remettre la valeur de cette ligne à true à la fin de la procédure.
Application.EnableEvents = True
Salutations!
"Bartez" a écrit dans le message de news: Bonjour,
j'ai une macro de mise à jour qui m'incrit dans toutes les feuilles d'un classeur, un nouveau nombre dans la cellule A1.
Quand je lance cette mise à jour toute simple, l'action paste est intercepté par Private Sub Worksheet_Change(ByVal Target As Range) dans laquelle je teste si le changement à eu lieu sur telle ou telle cellule pour effectuer une action particulaire suivant les valeurs rentrées et suivant la localisation de cette modification. Le problème c'est que dans le cas présent de ma mise à jour, je n'ai absolument pas besoin que Worksheet_Change intervienne et me ralentisse l'exécution de la mise à jour par ces tests.
Je cherche donc une façon de faire pour dévalider Worksheet_Change avec le lancement de ma mise à jour pour ensuite la remettre en fonction à la fin de cette mise à jour.
J'ai essayé de modifier le nom de Worksheet_change en Workseet_Change2 en mode débogage, mais Excel veut réinitialiser mon projet quand je tente cette action :(
Je sais pas si j'ai été bien claire dans mes explications....c'est pas sûr :-)
Merci de votre aide Bartez
Bartez
Merci pour ton code... Cette petite routine peut effectivement me dépanner ;-) @+ Bartez
"JLuc" a écrit dans le message de news:
*Bonjour Bartez*, Dans la procedure : Private Sub Worksheet_Change(ByVal Target As Range) If Sheets(1).Range("A2") = 1 Then Sheets(1).Range("A2") = "" Else 'le reste de ton code ... ... End If End Sub
Dans ta macro de maj : Sheets(1).Range("A2") = 1 ... ... ... La cellule est a adaptee en fonction de tes donnees, il vaut mieux que ce soit une cellule libre :oÞ
Bonjour,
j'ai une macro de mise à jour qui m'incrit dans toutes les feuilles d'un classeur, un nouveau nombre dans la cellule A1.
Quand je lance cette mise à jour toute simple, l'action paste est intercepté par Private Sub Worksheet_Change(ByVal Target As Range) dans laquelle je teste si le changement à eu lieu sur telle ou telle cellule pour effectuer une action particulaire suivant les valeurs rentrées et suivant la localisation de cette modification. Le problème c'est que dans le cas présent de ma mise à jour, je n'ai absolument pas besoin que Worksheet_Change intervienne et me ralentisse l'exécution de la mise à jour par ces tests.
Je cherche donc une façon de faire pour dévalider Worksheet_Change avec le lancement de ma mise à jour pour ensuite la remettre en fonction à la fin de cette mise à jour.
J'ai essayé de modifier le nom de Worksheet_change en Workseet_Change2 en mode débogage, mais Excel veut réinitialiser mon projet quand je tente cette action :(
Je sais pas si j'ai été bien claire dans mes explications....c'est pas sûr :-)
Merci de votre aide Bartez
-- ____ ( O | O ) -- _oooO_ JLuc _Oooo_
O-O
Merci pour ton code...
Cette petite routine peut effectivement me dépanner ;-)
@+
Bartez
"JLuc" <ns.jeanluc.laurent@free.fr.ns> a écrit dans le message de news:
mn.4b997d649f995da0.40692@free.fr.ns...
*Bonjour Bartez*,
Dans la procedure :
Private Sub Worksheet_Change(ByVal Target As Range)
If Sheets(1).Range("A2") = 1 Then
Sheets(1).Range("A2") = ""
Else
'le reste de ton code
...
...
End If
End Sub
Dans ta macro de maj :
Sheets(1).Range("A2") = 1
...
...
...
La cellule est a adaptee en fonction de tes donnees, il vaut mieux que ce
soit une cellule libre :oÞ
Bonjour,
j'ai une macro de mise à jour qui m'incrit dans toutes les feuilles d'un
classeur, un nouveau nombre dans la cellule A1.
Quand je lance cette mise à jour toute simple, l'action paste est
intercepté par
Private Sub Worksheet_Change(ByVal Target As Range)
dans laquelle je teste si le changement à eu lieu sur telle ou telle
cellule pour effectuer une action particulaire suivant les valeurs
rentrées et suivant la localisation de cette modification. Le problème
c'est que dans le cas présent de ma mise à jour, je n'ai absolument pas
besoin que Worksheet_Change intervienne et me ralentisse l'exécution de
la mise à jour par ces tests.
Je cherche donc une façon de faire pour dévalider Worksheet_Change avec
le lancement de ma mise à jour pour ensuite la remettre en fonction à la
fin de cette mise à jour.
J'ai essayé de modifier le nom de Worksheet_change en Workseet_Change2 en
mode débogage, mais Excel veut réinitialiser mon projet quand je tente
cette action :(
Je sais pas si j'ai été bien claire dans mes explications....c'est pas
sûr :-)
Merci pour ton code... Cette petite routine peut effectivement me dépanner ;-) @+ Bartez
"JLuc" a écrit dans le message de news:
*Bonjour Bartez*, Dans la procedure : Private Sub Worksheet_Change(ByVal Target As Range) If Sheets(1).Range("A2") = 1 Then Sheets(1).Range("A2") = "" Else 'le reste de ton code ... ... End If End Sub
Dans ta macro de maj : Sheets(1).Range("A2") = 1 ... ... ... La cellule est a adaptee en fonction de tes donnees, il vaut mieux que ce soit une cellule libre :oÞ
Bonjour,
j'ai une macro de mise à jour qui m'incrit dans toutes les feuilles d'un classeur, un nouveau nombre dans la cellule A1.
Quand je lance cette mise à jour toute simple, l'action paste est intercepté par Private Sub Worksheet_Change(ByVal Target As Range) dans laquelle je teste si le changement à eu lieu sur telle ou telle cellule pour effectuer une action particulaire suivant les valeurs rentrées et suivant la localisation de cette modification. Le problème c'est que dans le cas présent de ma mise à jour, je n'ai absolument pas besoin que Worksheet_Change intervienne et me ralentisse l'exécution de la mise à jour par ces tests.
Je cherche donc une façon de faire pour dévalider Worksheet_Change avec le lancement de ma mise à jour pour ensuite la remettre en fonction à la fin de cette mise à jour.
J'ai essayé de modifier le nom de Worksheet_change en Workseet_Change2 en mode débogage, mais Excel veut réinitialiser mon projet quand je tente cette action :(
Je sais pas si j'ai été bien claire dans mes explications....c'est pas sûr :-)
Merci de votre aide Bartez
-- ____ ( O | O ) -- _oooO_ JLuc _Oooo_
O-O
Bartez
Super pour ta ligne de code !
Je viens de la tester et elle bloque effectivement les évenements. C'est plus simple à utiliser que les tests que me proposait de faire JLuc.
Merci pour ton aide Bonne journée Bartez
"michdenis" a écrit dans le message de news: %
Bonjour Bartez,
En début de macro, tu inscris cette ligne de code qui a pour but d'inhiber les procédures événementielles de l'application Excel.
Application.EnableEvents = False
Et surtout ne pas oublier de remettre la valeur de cette ligne à true à la fin de la procédure.
Application.EnableEvents = True
Salutations!
"Bartez" a écrit dans le message de news:
Bonjour,
j'ai une macro de mise à jour qui m'incrit dans toutes les feuilles d'un classeur, un nouveau nombre dans la cellule A1.
Quand je lance cette mise à jour toute simple, l'action paste est intercepté par Private Sub Worksheet_Change(ByVal Target As Range) dans laquelle je teste si le changement à eu lieu sur telle ou telle cellule pour effectuer une action particulaire suivant les valeurs rentrées et suivant la localisation de cette modification. Le problème c'est que dans le cas présent de ma mise à jour, je n'ai absolument pas besoin que Worksheet_Change intervienne et me ralentisse l'exécution de la mise à jour par ces tests.
Je cherche donc une façon de faire pour dévalider Worksheet_Change avec le lancement de ma mise à jour pour ensuite la remettre en fonction à la fin de cette mise à jour.
J'ai essayé de modifier le nom de Worksheet_change en Workseet_Change2 en mode débogage, mais Excel veut réinitialiser mon projet quand je tente cette action :(
Je sais pas si j'ai été bien claire dans mes explications....c'est pas sûr :-)
Merci de votre aide Bartez
Super pour ta ligne de code !
Je viens de la tester et elle bloque effectivement les évenements. C'est
plus simple à utiliser que les tests que me proposait de faire JLuc.
Merci pour ton aide
Bonne journée
Bartez
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
%233iZ7i9WGHA.3440@TK2MSFTNGP02.phx.gbl...
Bonjour Bartez,
En début de macro, tu inscris cette ligne de code
qui a pour but d'inhiber les procédures événementielles
de l'application Excel.
Application.EnableEvents = False
Et surtout ne pas oublier de remettre la valeur de cette ligne à true
à la fin de la procédure.
Application.EnableEvents = True
Salutations!
"Bartez" <Bartez@free.fr> a écrit dans le message de news:
eOpyzW9WGHA.1200@TK2MSFTNGP03.phx.gbl...
Bonjour,
j'ai une macro de mise à jour qui m'incrit dans toutes les feuilles d'un
classeur, un nouveau nombre dans la cellule A1.
Quand je lance cette mise à jour toute simple, l'action paste est
intercepté
par
Private Sub Worksheet_Change(ByVal Target As Range)
dans laquelle je teste si le changement à eu lieu sur telle ou telle
cellule
pour effectuer une action particulaire suivant les valeurs rentrées et
suivant la localisation de cette modification. Le problème c'est que dans
le
cas présent de ma mise à jour, je n'ai absolument pas besoin que
Worksheet_Change intervienne et me ralentisse l'exécution de la mise à
jour
par ces tests.
Je cherche donc une façon de faire pour dévalider Worksheet_Change avec le
lancement de ma mise à jour pour ensuite la remettre en fonction à la fin
de
cette mise à jour.
J'ai essayé de modifier le nom de Worksheet_change en Workseet_Change2 en
mode débogage, mais Excel veut réinitialiser mon projet quand je tente
cette
action :(
Je sais pas si j'ai été bien claire dans mes explications....c'est pas sûr
:-)
Je viens de la tester et elle bloque effectivement les évenements. C'est plus simple à utiliser que les tests que me proposait de faire JLuc.
Merci pour ton aide Bonne journée Bartez
"michdenis" a écrit dans le message de news: %
Bonjour Bartez,
En début de macro, tu inscris cette ligne de code qui a pour but d'inhiber les procédures événementielles de l'application Excel.
Application.EnableEvents = False
Et surtout ne pas oublier de remettre la valeur de cette ligne à true à la fin de la procédure.
Application.EnableEvents = True
Salutations!
"Bartez" a écrit dans le message de news:
Bonjour,
j'ai une macro de mise à jour qui m'incrit dans toutes les feuilles d'un classeur, un nouveau nombre dans la cellule A1.
Quand je lance cette mise à jour toute simple, l'action paste est intercepté par Private Sub Worksheet_Change(ByVal Target As Range) dans laquelle je teste si le changement à eu lieu sur telle ou telle cellule pour effectuer une action particulaire suivant les valeurs rentrées et suivant la localisation de cette modification. Le problème c'est que dans le cas présent de ma mise à jour, je n'ai absolument pas besoin que Worksheet_Change intervienne et me ralentisse l'exécution de la mise à jour par ces tests.
Je cherche donc une façon de faire pour dévalider Worksheet_Change avec le lancement de ma mise à jour pour ensuite la remettre en fonction à la fin de cette mise à jour.
J'ai essayé de modifier le nom de Worksheet_change en Workseet_Change2 en mode débogage, mais Excel veut réinitialiser mon projet quand je tente cette action :(
Je sais pas si j'ai été bien claire dans mes explications....c'est pas sûr :-)