Je vous soumets le petit problème suivant car je ne trouve pas de solution.
Dans un tableau j'utilise une macro pour remplir une grille de présence
en "cochant" des cellule à l'aide d'un double-clic.
Ca fonctionne bien.
J'ai voulu rajouter une validation des données pour ces memes cellules
(une formule SommeProd - pour éviter la saisie de doublons "meme
personne/meme date") et la, ca ne marche pas.
Si je supprime la macro la validation de donnees est OK.
Les deux sont-ils incompatibles ?
Peut-on contourner cela ? Si oui, comment ?
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
Fredo P
Serait il possible d'avoir le fichier in question, on y verrait plus clair http://cjoint.com -- Fredo P. "Pierre.M" a écrit dans le message de news:
Bonsoir tous,
Je vous soumets le petit problème suivant car je ne trouve pas de solution.
Dans un tableau j'utilise une macro pour remplir une grille de présence en "cochant" des cellule à l'aide d'un double-clic. Ca fonctionne bien.
J'ai voulu rajouter une validation des données pour ces memes cellules (une formule SommeProd - pour éviter la saisie de doublons "meme personne/meme date") et la, ca ne marche pas.
Si je supprime la macro la validation de donnees est OK.
Les deux sont-ils incompatibles ? Peut-on contourner cela ? Si oui, comment ?
Merci pour vos conseils et bonne soirée.
Pierre.M
Serait il possible d'avoir le fichier in question, on y verrait plus clair
http://cjoint.com
--
Fredo P.
"Pierre.M" <prenom.mulot@wanadoo.fr> a écrit dans le message de news:
2008053019095816807-prenommulot@wanadoofr...
Bonsoir tous,
Je vous soumets le petit problème suivant car je ne trouve pas de
solution.
Dans un tableau j'utilise une macro pour remplir une grille de présence en
"cochant" des cellule à l'aide d'un double-clic.
Ca fonctionne bien.
J'ai voulu rajouter une validation des données pour ces memes cellules
(une formule SommeProd - pour éviter la saisie de doublons "meme
personne/meme date") et la, ca ne marche pas.
Si je supprime la macro la validation de donnees est OK.
Les deux sont-ils incompatibles ?
Peut-on contourner cela ? Si oui, comment ?
Serait il possible d'avoir le fichier in question, on y verrait plus clair http://cjoint.com -- Fredo P. "Pierre.M" a écrit dans le message de news:
Bonsoir tous,
Je vous soumets le petit problème suivant car je ne trouve pas de solution.
Dans un tableau j'utilise une macro pour remplir une grille de présence en "cochant" des cellule à l'aide d'un double-clic. Ca fonctionne bien.
J'ai voulu rajouter une validation des données pour ces memes cellules (une formule SommeProd - pour éviter la saisie de doublons "meme personne/meme date") et la, ca ne marche pas.
Si je supprime la macro la validation de donnees est OK.
Les deux sont-ils incompatibles ? Peut-on contourner cela ? Si oui, comment ?
Merci pour vos conseils et bonne soirée.
Pierre.M
Pierre.M
En voila un modele simplifie : http://cjoint.com/?fExI6j6CH3
On 2008-05-30 22:04:56 +0200, "Fredo P" said:
Serait il possible d'avoir le fichier in question, on y verrait plus clair http://cjoint.com
En voila un modele simplifie : http://cjoint.com/?fExI6j6CH3
On 2008-05-30 22:04:56 +0200, "Fredo P"
<ponsinet.frederic363etdesbrouettes@orange.fr> said:
Serait il possible d'avoir le fichier in question, on y verrait plus clair
http://cjoint.com
En voila un modele simplifie : http://cjoint.com/?fExI6j6CH3
On 2008-05-30 22:04:56 +0200, "Fredo P" said:
Serait il possible d'avoir le fichier in question, on y verrait plus clair http://cjoint.com
JB
Bonjour,
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean) If Not Intersect([B1:G11], Target) Is Nothing Then Target.Value = IIf(Target.Value = "", "X", "") temp = _ "Sumproduct(($A$2:$A$11=" & Cells(Target.Row, 1).Address & ")*(" & _ Range(Cells(2, Target.Column), Cells(11, Target.Column)).Address & "= ""X""))" If Evaluate(temp) > 1 Then MsgBox "Doublon" Application.EnableEvents = False Target = Empty Application.EnableEvents = True End If Cancel = True End If End Sub
JB http://boisgontierjacques.free.fr/
On 30 mai, 23:36, Pierre.M wrote:
En voila un modele simplifie :http://cjoint.com/?fExI6j6CH3
On 2008-05-30 22:04:56 +0200, "Fredo P" said:
Serait il possible d'avoir le fichier in question, on y verrait plus cla ir http://cjoint.com- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour,
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range,
Cancel As Boolean)
If Not Intersect([B1:G11], Target) Is Nothing Then
Target.Value = IIf(Target.Value = "", "X", "")
temp = _
"Sumproduct(($A$2:$A$11=" & Cells(Target.Row, 1).Address & ")*(" &
_
Range(Cells(2, Target.Column), Cells(11, Target.Column)).Address
& "= ""X""))"
If Evaluate(temp) > 1 Then
MsgBox "Doublon"
Application.EnableEvents = False
Target = Empty
Application.EnableEvents = True
End If
Cancel = True
End If
End Sub
JB
http://boisgontierjacques.free.fr/
On 30 mai, 23:36, Pierre.M <prenom.mu...@wanadoo.fr> wrote:
En voila un modele simplifie :http://cjoint.com/?fExI6j6CH3
On 2008-05-30 22:04:56 +0200, "Fredo P"
<ponsinet.frederic363etdesbrouet...@orange.fr> said:
Serait il possible d'avoir le fichier in question, on y verrait plus cla ir
http://cjoint.com- Masquer le texte des messages précédents -
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean) If Not Intersect([B1:G11], Target) Is Nothing Then Target.Value = IIf(Target.Value = "", "X", "") temp = _ "Sumproduct(($A$2:$A$11=" & Cells(Target.Row, 1).Address & ")*(" & _ Range(Cells(2, Target.Column), Cells(11, Target.Column)).Address & "= ""X""))" If Evaluate(temp) > 1 Then MsgBox "Doublon" Application.EnableEvents = False Target = Empty Application.EnableEvents = True End If Cancel = True End If End Sub
JB http://boisgontierjacques.free.fr/
On 30 mai, 23:36, Pierre.M wrote:
En voila un modele simplifie :http://cjoint.com/?fExI6j6CH3
On 2008-05-30 22:04:56 +0200, "Fredo P" said:
Serait il possible d'avoir le fichier in question, on y verrait plus cla ir http://cjoint.com- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Pierre.M
Merci beaucoup. C'est bien ce dont j'avais besoin.
Saurais-tu par contre me dire pourquoi ça ne fonctionnait pas avec la validation de données ? Cette methode me semblait plus simple. Y a-t-il une incompatibilité en général ou particulièrement dans ce cas-la ?
Merci encore et bon week-end.
Pierre.M
On 2008-05-31 08:35:18 +0200, JB said:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean) If Not Intersect([B1:G11], Target) Is Nothing Then Target.Value = IIf(Target.Value = "", "X", "") temp = _ "Sumproduct(($A$2:$A$11=" & Cells(Target.Row, 1).Address & ")*(" & _ Range(Cells(2, Target.Column), Cells(11, Target.Column)).Address & "= ""X""))" If Evaluate(temp) > 1 Then MsgBox "Doublon" Application.EnableEvents = False Target = Empty Application.EnableEvents = True End If Cancel = True End If End Sub
Merci beaucoup. C'est bien ce dont j'avais besoin.
Saurais-tu par contre me dire pourquoi ça ne fonctionnait pas avec la
validation de données ?
Cette methode me semblait plus simple.
Y a-t-il une incompatibilité en général ou particulièrement dans ce cas-la ?
Merci encore et bon week-end.
Pierre.M
On 2008-05-31 08:35:18 +0200, JB <boisgontier@hotmail.com> said:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range,
Cancel As Boolean)
If Not Intersect([B1:G11], Target) Is Nothing Then
Target.Value = IIf(Target.Value = "", "X", "")
temp = _
"Sumproduct(($A$2:$A$11=" & Cells(Target.Row, 1).Address & ")*(" &
_
Range(Cells(2, Target.Column), Cells(11, Target.Column)).Address
& "= ""X""))"
If Evaluate(temp) > 1 Then
MsgBox "Doublon"
Application.EnableEvents = False
Target = Empty
Application.EnableEvents = True
End If
Cancel = True
End If
End Sub
Merci beaucoup. C'est bien ce dont j'avais besoin.
Saurais-tu par contre me dire pourquoi ça ne fonctionnait pas avec la validation de données ? Cette methode me semblait plus simple. Y a-t-il une incompatibilité en général ou particulièrement dans ce cas-la ?
Merci encore et bon week-end.
Pierre.M
On 2008-05-31 08:35:18 +0200, JB said:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean) If Not Intersect([B1:G11], Target) Is Nothing Then Target.Value = IIf(Target.Value = "", "X", "") temp = _ "Sumproduct(($A$2:$A$11=" & Cells(Target.Row, 1).Address & ")*(" & _ Range(Cells(2, Target.Column), Cells(11, Target.Column)).Address & "= ""X""))" If Evaluate(temp) > 1 Then MsgBox "Doublon" Application.EnableEvents = False Target = Empty Application.EnableEvents = True End If Cancel = True End If End Sub
JB
Données/Validation ne réagit qu'aux événements exogènes (X est cr ée par le programme et non pas saisi au clavier)
JB
On 31 mai, 09:30, Pierre.M wrote:
Merci beaucoup. C'est bien ce dont j'avais besoin.
Saurais-tu par contre me dire pourquoi ça ne fonctionnait pas avec la validation de données ? Cette methode me semblait plus simple. Y a-t-il une incompatibilité en général ou particulièrement dans c e cas-la ?
Merci encore et bon week-end.
Pierre.M
On 2008-05-31 08:35:18 +0200, JB said:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean) If Not Intersect([B1:G11], Target) Is Nothing Then Target.Value = IIf(Target.Value = "", "X", "") temp = _ "Sumproduct(($A$2:$A$11=" & Cells(Target.Row, 1).Address & ")* (" & _ Range(Cells(2, Target.Column), Cells(11, Target.Column)).Add ress & "= ""X""))" If Evaluate(temp) > 1 Then MsgBox "Doublon" Application.EnableEvents = False Target = Empty Application.EnableEvents = True End If Cancel = True End If End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Données/Validation ne réagit qu'aux événements exogènes (X est cr ée
par le programme et non pas saisi au clavier)
JB
On 31 mai, 09:30, Pierre.M <prenom.mu...@wanadoo.fr> wrote:
Merci beaucoup. C'est bien ce dont j'avais besoin.
Saurais-tu par contre me dire pourquoi ça ne fonctionnait pas avec la
validation de données ?
Cette methode me semblait plus simple.
Y a-t-il une incompatibilité en général ou particulièrement dans c e cas-la ?
Merci encore et bon week-end.
Pierre.M
On 2008-05-31 08:35:18 +0200, JB <boisgont...@hotmail.com> said:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range,
Cancel As Boolean)
If Not Intersect([B1:G11], Target) Is Nothing Then
Target.Value = IIf(Target.Value = "", "X", "")
temp = _
"Sumproduct(($A$2:$A$11=" & Cells(Target.Row, 1).Address & ")* (" &
_
Range(Cells(2, Target.Column), Cells(11, Target.Column)).Add ress
& "= ""X""))"
If Evaluate(temp) > 1 Then
MsgBox "Doublon"
Application.EnableEvents = False
Target = Empty
Application.EnableEvents = True
End If
Cancel = True
End If
End Sub- Masquer le texte des messages précédents -
Données/Validation ne réagit qu'aux événements exogènes (X est cr ée par le programme et non pas saisi au clavier)
JB
On 31 mai, 09:30, Pierre.M wrote:
Merci beaucoup. C'est bien ce dont j'avais besoin.
Saurais-tu par contre me dire pourquoi ça ne fonctionnait pas avec la validation de données ? Cette methode me semblait plus simple. Y a-t-il une incompatibilité en général ou particulièrement dans c e cas-la ?
Merci encore et bon week-end.
Pierre.M
On 2008-05-31 08:35:18 +0200, JB said:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean) If Not Intersect([B1:G11], Target) Is Nothing Then Target.Value = IIf(Target.Value = "", "X", "") temp = _ "Sumproduct(($A$2:$A$11=" & Cells(Target.Row, 1).Address & ")* (" & _ Range(Cells(2, Target.Column), Cells(11, Target.Column)).Add ress & "= ""X""))" If Evaluate(temp) > 1 Then MsgBox "Doublon" Application.EnableEvents = False Target = Empty Application.EnableEvents = True End If Cancel = True End If End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Pierre.M
Je viens d'apprendre quelque chose. Merci beaucoup.
Pierre.M
On 2008-05-31 10:34:10 +0200, JB said:
Données/Validation ne réagit qu'aux événements exogènes (X est cr ée par le programme et non pas saisi au clavier)
JB
On 31 mai, 09:30, Pierre.M wrote:
Merci beaucoup. C'est bien ce dont j'avais besoin.
Saurais-tu par contre me dire pourquoi ça ne fonctionnait pas avec la validation de données ? Cette methode me semblait plus simple. Y a-t-il une incompatibilité en général ou particulièrement dans c e cas-la ?
Merci encore et bon week-end.
Pierre.M
On 2008-05-31 08:35:18 +0200, JB said:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean) If Not Intersect([B1:G11], Target) Is Nothing Then Target.Value = IIf(Target.Value = "", "X", "") temp = _ "Sumproduct(($A$2:$A$11=" & Cells(Target.Row, 1).Address & ")* (" &
& "= ""X""))" If Evaluate(temp) > 1 Then MsgBox "Doublon" Application.EnableEvents = False Target = Empty Application.EnableEvents = True End If Cancel = True End If End Sub- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Je viens d'apprendre quelque chose.
Merci beaucoup.
Pierre.M
On 2008-05-31 10:34:10 +0200, JB <boisgontier@hotmail.com> said:
Données/Validation ne réagit qu'aux événements exogènes (X est cr
ée
par le programme et non pas saisi au clavier)
JB
On 31 mai, 09:30, Pierre.M <prenom.mu...@wanadoo.fr> wrote:
Merci beaucoup. C'est bien ce dont j'avais besoin.
Saurais-tu par contre me dire pourquoi ça ne fonctionnait pas avec la
validation de données ?
Cette methode me semblait plus simple.
Y a-t-il une incompatibilité en général ou particulièrement dans c
e cas-la ?
Merci encore et bon week-end.
Pierre.M
On 2008-05-31 08:35:18 +0200, JB <boisgont...@hotmail.com> said:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range,
Cancel As Boolean)
If Not Intersect([B1:G11], Target) Is Nothing Then
Target.Value = IIf(Target.Value = "", "X", "")
temp = _
"Sumproduct(($A$2:$A$11=" & Cells(Target.Row, 1).Address & ")*
(" &
& "= ""X""))"
If Evaluate(temp) > 1 Then
MsgBox "Doublon"
Application.EnableEvents = False
Target = Empty
Application.EnableEvents = True
End If
Cancel = True
End If
End Sub- Masquer le texte des messages précédents -
Je viens d'apprendre quelque chose. Merci beaucoup.
Pierre.M
On 2008-05-31 10:34:10 +0200, JB said:
Données/Validation ne réagit qu'aux événements exogènes (X est cr ée par le programme et non pas saisi au clavier)
JB
On 31 mai, 09:30, Pierre.M wrote:
Merci beaucoup. C'est bien ce dont j'avais besoin.
Saurais-tu par contre me dire pourquoi ça ne fonctionnait pas avec la validation de données ? Cette methode me semblait plus simple. Y a-t-il une incompatibilité en général ou particulièrement dans c e cas-la ?
Merci encore et bon week-end.
Pierre.M
On 2008-05-31 08:35:18 +0200, JB said:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean) If Not Intersect([B1:G11], Target) Is Nothing Then Target.Value = IIf(Target.Value = "", "X", "") temp = _ "Sumproduct(($A$2:$A$11=" & Cells(Target.Row, 1).Address & ")* (" &
& "= ""X""))" If Evaluate(temp) > 1 Then MsgBox "Doublon" Application.EnableEvents = False Target = Empty Application.EnableEvents = True End If Cancel = True End If End Sub- Masquer le texte des messages précédents -