Comment détecter un évènement pour lancer l'exécution d'une macr o
4 réponses
Raymond BUISSON
Je cherche à écrire une macro qui s'exécute lorsqu'on saisie une valeur
numérique dans une cellule donnée d'une feuille EXCEL et je n'y arrive pas.
Je n'arrive pas à faire marcher l'instruction "Private Sub
Worksheet_Change(ByVal Target As Range)".
J'écris la séquence de programmation qu'il faut dans un module de macro et
rien ne se passe.
Je suppose qu'il faut faire une déclaration quelques part dans une fenêtre
EXCEL mais je ne trouve pas où.
Merci de m'aider si quelqu'un le peut.
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
Daniel.C
Bonjour. Mets la macro suivante dans un module standard et exécute-la :
Sub test() application.EnableEvents=True End Sub
Si le problème persiste, poste ton code. Cordialement. Daniel
Je cherche à écrire une macro qui s'exécute lorsqu'on saisie une valeur numérique dans une cellule donnée d'une feuille EXCEL et je n'y arrive pas. Je n'arrive pas à faire marcher l'instruction "Private Sub Worksheet_Change(ByVal Target As Range)". J'écris la séquence de programmation qu'il faut dans un module de macro et rien ne se passe. Je suppose qu'il faut faire une déclaration quelques part dans une fenêtre EXCEL mais je ne trouve pas où. Merci de m'aider si quelqu'un le peut.
Cordialement,
Raymond BUISSON
Bonjour.
Mets la macro suivante dans un module standard et exécute-la :
Sub test()
application.EnableEvents=True
End Sub
Si le problème persiste, poste ton code.
Cordialement.
Daniel
Je cherche à écrire une macro qui s'exécute lorsqu'on saisie une valeur
numérique dans une cellule donnée d'une feuille EXCEL et je n'y arrive pas.
Je n'arrive pas à faire marcher l'instruction "Private Sub
Worksheet_Change(ByVal Target As Range)".
J'écris la séquence de programmation qu'il faut dans un module de macro et
rien ne se passe.
Je suppose qu'il faut faire une déclaration quelques part dans une fenêtre
EXCEL mais je ne trouve pas où.
Merci de m'aider si quelqu'un le peut.
Bonjour. Mets la macro suivante dans un module standard et exécute-la :
Sub test() application.EnableEvents=True End Sub
Si le problème persiste, poste ton code. Cordialement. Daniel
Je cherche à écrire une macro qui s'exécute lorsqu'on saisie une valeur numérique dans une cellule donnée d'une feuille EXCEL et je n'y arrive pas. Je n'arrive pas à faire marcher l'instruction "Private Sub Worksheet_Change(ByVal Target As Range)". J'écris la séquence de programmation qu'il faut dans un module de macro et rien ne se passe. Je suppose qu'il faut faire une déclaration quelques part dans une fenêtre EXCEL mais je ne trouve pas où. Merci de m'aider si quelqu'un le peut.
Cordialement,
Raymond BUISSON
Jacky
Bonjour,
Teste ceci.. (Cellule A1 dans l'exemple) '------------------ Private Sub Worksheet_Change(ByVal Target As Range) On Error GoTo fin If Target.Address = "$A$1" And Target.Count = 1 Then Application.EnableEvents = False If IsNumeric(Target) Then MsgBox "La valeur de la cellule " & Target.Address(0, 0) & " est numérique" Else MsgBox "La valeur de la cellule " & Target.Address(0, 0) & " est non numérique" End If End If fin: Application.EnableEvents = True End Sub '----------------------------
-- Salutations JJ
"Raymond BUISSON" a écrit dans le message de news:
Je cherche à écrire une macro qui s'exécute lorsqu'on saisie une valeur numérique dans une cellule donnée d'une feuille EXCEL et je n'y arrive pas. Je n'arrive pas à faire marcher l'instruction "Private Sub Worksheet_Change(ByVal Target As Range)". J'écris la séquence de programmation qu'il faut dans un module de macro et rien ne se passe. Je suppose qu'il faut faire une déclaration quelques part dans une fenêtre EXCEL mais je ne trouve pas où. Merci de m'aider si quelqu'un le peut.
Cordialement,
Raymond BUISSON
Bonjour,
Teste ceci.. (Cellule A1 dans l'exemple)
'------------------
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo fin
If Target.Address = "$A$1" And Target.Count = 1 Then
Application.EnableEvents = False
If IsNumeric(Target) Then
MsgBox "La valeur de la cellule " & Target.Address(0, 0) & " est numérique"
Else
MsgBox "La valeur de la cellule " & Target.Address(0, 0) & " est non numérique"
End If
End If
fin:
Application.EnableEvents = True
End Sub
'----------------------------
--
Salutations
JJ
"Raymond BUISSON" <RaymondBUISSON@discussions.microsoft.com> a écrit dans le message de news:
68005000-1877-493A-8678-A3CC705485CA@microsoft.com...
Je cherche à écrire une macro qui s'exécute lorsqu'on saisie une valeur
numérique dans une cellule donnée d'une feuille EXCEL et je n'y arrive pas.
Je n'arrive pas à faire marcher l'instruction "Private Sub
Worksheet_Change(ByVal Target As Range)".
J'écris la séquence de programmation qu'il faut dans un module de macro et
rien ne se passe.
Je suppose qu'il faut faire une déclaration quelques part dans une fenêtre
EXCEL mais je ne trouve pas où.
Merci de m'aider si quelqu'un le peut.
Teste ceci.. (Cellule A1 dans l'exemple) '------------------ Private Sub Worksheet_Change(ByVal Target As Range) On Error GoTo fin If Target.Address = "$A$1" And Target.Count = 1 Then Application.EnableEvents = False If IsNumeric(Target) Then MsgBox "La valeur de la cellule " & Target.Address(0, 0) & " est numérique" Else MsgBox "La valeur de la cellule " & Target.Address(0, 0) & " est non numérique" End If End If fin: Application.EnableEvents = True End Sub '----------------------------
-- Salutations JJ
"Raymond BUISSON" a écrit dans le message de news:
Je cherche à écrire une macro qui s'exécute lorsqu'on saisie une valeur numérique dans une cellule donnée d'une feuille EXCEL et je n'y arrive pas. Je n'arrive pas à faire marcher l'instruction "Private Sub Worksheet_Change(ByVal Target As Range)". J'écris la séquence de programmation qu'il faut dans un module de macro et rien ne se passe. Je suppose qu'il faut faire une déclaration quelques part dans une fenêtre EXCEL mais je ne trouve pas où. Merci de m'aider si quelqu'un le peut.
Cordialement,
Raymond BUISSON
galopin01
Bonjour, Les Private Sub Worksheet_Change doivent êtres écrites dans le module de la feuille concernée et non pas dans un module quelconque. (Double clic dans l'explorateur de projet sur la feuille concernée) A+
"Jacky" a écrit dans le message de news:
Bonjour,
Teste ceci.. (Cellule A1 dans l'exemple) '------------------ Private Sub Worksheet_Change(ByVal Target As Range) On Error GoTo fin If Target.Address = "$A$1" And Target.Count = 1 Then Application.EnableEvents = False If IsNumeric(Target) Then MsgBox "La valeur de la cellule " & Target.Address(0, 0) & " est numérique" Else MsgBox "La valeur de la cellule " & Target.Address(0, 0) & " est non numérique" End If End If fin: Application.EnableEvents = True End Sub '----------------------------
-- Salutations JJ
"Raymond BUISSON" a écrit dans le message de news:
Je cherche à écrire une macro qui s'exécute lorsqu'on saisie une valeur numérique dans une cellule donnée d'une feuille EXCEL et je n'y arrive pas. Je n'arrive pas à faire marcher l'instruction "Private Sub Worksheet_Change(ByVal Target As Range)". J'écris la séquence de programmation qu'il faut dans un module de macro et rien ne se passe. Je suppose qu'il faut faire une déclaration quelques part dans une fenêtre EXCEL mais je ne trouve pas où. Merci de m'aider si quelqu'un le peut.
Cordialement,
Raymond BUISSON
Bonjour,
Les Private Sub Worksheet_Change doivent êtres écrites dans le module de la
feuille concernée et non pas dans un module quelconque. (Double clic dans
l'explorateur de projet sur la feuille concernée)
A+
"Jacky" <Dupond@marcel.fr> a écrit dans le message de news:
eTbCDjw4KHA.5880@TK2MSFTNGP04.phx.gbl...
Bonjour,
Teste ceci.. (Cellule A1 dans l'exemple)
'------------------
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo fin
If Target.Address = "$A$1" And Target.Count = 1 Then
Application.EnableEvents = False
If IsNumeric(Target) Then
MsgBox "La valeur de la cellule " & Target.Address(0, 0) & " est
numérique"
Else
MsgBox "La valeur de la cellule " & Target.Address(0, 0) & " est non
numérique"
End If
End If
fin:
Application.EnableEvents = True
End Sub
'----------------------------
--
Salutations
JJ
"Raymond BUISSON" <RaymondBUISSON@discussions.microsoft.com> a écrit dans
le message de news: 68005000-1877-493A-8678-A3CC705485CA@microsoft.com...
Je cherche à écrire une macro qui s'exécute lorsqu'on saisie une valeur
numérique dans une cellule donnée d'une feuille EXCEL et je n'y arrive
pas.
Je n'arrive pas à faire marcher l'instruction "Private Sub
Worksheet_Change(ByVal Target As Range)".
J'écris la séquence de programmation qu'il faut dans un module de macro
et
rien ne se passe.
Je suppose qu'il faut faire une déclaration quelques part dans une
fenêtre
EXCEL mais je ne trouve pas où.
Merci de m'aider si quelqu'un le peut.
Bonjour, Les Private Sub Worksheet_Change doivent êtres écrites dans le module de la feuille concernée et non pas dans un module quelconque. (Double clic dans l'explorateur de projet sur la feuille concernée) A+
"Jacky" a écrit dans le message de news:
Bonjour,
Teste ceci.. (Cellule A1 dans l'exemple) '------------------ Private Sub Worksheet_Change(ByVal Target As Range) On Error GoTo fin If Target.Address = "$A$1" And Target.Count = 1 Then Application.EnableEvents = False If IsNumeric(Target) Then MsgBox "La valeur de la cellule " & Target.Address(0, 0) & " est numérique" Else MsgBox "La valeur de la cellule " & Target.Address(0, 0) & " est non numérique" End If End If fin: Application.EnableEvents = True End Sub '----------------------------
-- Salutations JJ
"Raymond BUISSON" a écrit dans le message de news:
Je cherche à écrire une macro qui s'exécute lorsqu'on saisie une valeur numérique dans une cellule donnée d'une feuille EXCEL et je n'y arrive pas. Je n'arrive pas à faire marcher l'instruction "Private Sub Worksheet_Change(ByVal Target As Range)". J'écris la séquence de programmation qu'il faut dans un module de macro et rien ne se passe. Je suppose qu'il faut faire une déclaration quelques part dans une fenêtre EXCEL mais je ne trouve pas où. Merci de m'aider si quelqu'un le peut.
Teste ceci.. (Cellule A1 dans l'exemple) '------------------ Private Sub Worksheet_Change(ByVal Target As Range) On Error GoTo fin If Target.Address = "$A$1" And Target.Count = 1 Then Application.EnableEvents = False If IsNumeric(Target) Then MsgBox "La valeur de la cellule " & Target.Address(0, 0) & " est numérique" Else MsgBox "La valeur de la cellule " & Target.Address(0, 0) & " est non numérique" End If End If fin: Application.EnableEvents = True End Sub '----------------------------
-- Salutations JJ
"Raymond BUISSON" a écrit dans le message de news:
Je cherche à écrire une macro qui s'exécute lorsqu'on saisie une valeur numérique dans une cellule donnée d'une feuille EXCEL et je n'y arrive pas. Je n'arrive pas à faire marcher l'instruction "Private Sub Worksheet_Change(ByVal Target As Range)". J'écris la séquence de programmation qu'il faut dans un module de macro et rien ne se passe. Je suppose qu'il faut faire une déclaration quelques part dans une fenêtre EXCEL mais je ne trouve pas où. Merci de m'aider si quelqu'un le peut.
"Jacky" <Dupond@marcel.fr> a écrit dans le message de news: eTbCDjw4KHA.5880@TK2MSFTNGP04.phx.gbl...
Bonjour,
Teste ceci.. (Cellule A1 dans l'exemple)
'------------------
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo fin
If Target.Address = "$A$1" And Target.Count = 1 Then
Application.EnableEvents = False
If IsNumeric(Target) Then
MsgBox "La valeur de la cellule " & Target.Address(0, 0) & " est numérique"
Else
MsgBox "La valeur de la cellule " & Target.Address(0, 0) & " est non numérique"
End If
End If
fin:
Application.EnableEvents = True
End Sub
'----------------------------
--
Salutations
JJ
"Raymond BUISSON" <RaymondBUISSON@discussions.microsoft.com> a écrit dans le message de news:
68005000-1877-493A-8678-A3CC705485CA@microsoft.com...
Je cherche à écrire une macro qui s'exécute lorsqu'on saisie une valeur
numérique dans une cellule donnée d'une feuille EXCEL et je n'y arrive pas.
Je n'arrive pas à faire marcher l'instruction "Private Sub
Worksheet_Change(ByVal Target As Range)".
J'écris la séquence de programmation qu'il faut dans un module de macro et
rien ne se passe.
Je suppose qu'il faut faire une déclaration quelques part dans une fenêtre
EXCEL mais je ne trouve pas où.
Merci de m'aider si quelqu'un le peut.
Teste ceci.. (Cellule A1 dans l'exemple) '------------------ Private Sub Worksheet_Change(ByVal Target As Range) On Error GoTo fin If Target.Address = "$A$1" And Target.Count = 1 Then Application.EnableEvents = False If IsNumeric(Target) Then MsgBox "La valeur de la cellule " & Target.Address(0, 0) & " est numérique" Else MsgBox "La valeur de la cellule " & Target.Address(0, 0) & " est non numérique" End If End If fin: Application.EnableEvents = True End Sub '----------------------------
-- Salutations JJ
"Raymond BUISSON" a écrit dans le message de news:
Je cherche à écrire une macro qui s'exécute lorsqu'on saisie une valeur numérique dans une cellule donnée d'une feuille EXCEL et je n'y arrive pas. Je n'arrive pas à faire marcher l'instruction "Private Sub Worksheet_Change(ByVal Target As Range)". J'écris la séquence de programmation qu'il faut dans un module de macro et rien ne se passe. Je suppose qu'il faut faire une déclaration quelques part dans une fenêtre EXCEL mais je ne trouve pas où. Merci de m'aider si quelqu'un le peut.