code double clic

Le
Greg
Bonsoir à tous,

Un jeu d'enfant pour vous, je pense Une galère pour moi Avec le code
suivant, seul un double clic en colonne A active le formulaire. Comment
l'activer pour les 5 premières colonnes du tableau? Pour un choix de
cellules? Pour tout le tableau?

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
If Target.Column = 1 Then
UserForm1.Show
End If
Cancel = True
End Sub


Merci à vous
Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Greg
Le #21338641
Second problème avec ce code: si je réalise un double-clic dans une cellule
non-vide, un message d'erreur apprait. Comment remédier?

Merci pour votre aide.

Greg

"Greg" news:
Bonsoir à tous,

Un jeu d'enfant pour vous, je pense... Une galère pour moi... Avec le code
suivant, seul un double clic en colonne A active le formulaire. Comment
l'activer pour les 5 premières colonnes du tableau? Pour un choix de
cellules? Pour tout le tableau?

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
If Target.Column = 1 Then
UserForm1.Show
End If
Cancel = True
End Sub


Merci à vous

Patrick BASTARD
Le #21338621
Bonsoir, "Greg"

Vous nous dites " If Target.Column = 1 " pour la première colonne.
Avant de poster pour demander pour les 5 premières colonnes, avez-vous
essayé " If Target.Column < 6 " ?
Ne prenez surtout pas cette remarque comme un reproche, c'est juste pour
vous dire qu'on ne risque rien à tester par soi-même, et que même c'est
ainsi qu'on apprend le mieux.

--
Bien ,

Patrick




Bonsoir à tous,

Un jeu d'enfant pour vous, je pense... Une galère pour moi... Avec le code
suivant, seul un double clic en colonne A active le formulaire. Comment
l'activer pour les 5 premières colonnes du tableau? Pour un choix de
cellules? Pour tout le tableau?

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
If Target.Column = 1 Then
UserForm1.Show
End If
Cancel = True
End Sub


Merci à vous

Daniel.C
Le #21338731
Bonsoir.
Pour les 5 premières colonnes, mets :

If Target.Column <= 5 Then

Pour une plage de cellules :

If not intersect(target,[A10:G50]) is nothing then

Pour certaines cellules :

If Not Intersect(Target, Range("A10, B20, C30")) Is Nothing Then

Cordialement.
Daniel

Bonsoir à tous,

Un jeu d'enfant pour vous, je pense... Une galère pour moi... Avec le code
suivant, seul un double clic en colonne A active le formulaire. Comment
l'activer pour les 5 premières colonnes du tableau? Pour un choix de
cellules? Pour tout le tableau?

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
If Target.Column = 1 Then
UserForm1.Show
End If
Cancel = True
End Sub


Merci à vous
Greg
Le #21338721
Merci Patrick,

J'avais testé "1 to 5", "1:5" ... et après je ne voyez pas, d'où l'appel de
détresse. Après, tout ne s'invente pas ;-)

Je reste coincé également vis à vis de mes cellules non vides qui
n'acceptent pas le code... sauf à supprimer le contenu de la cellule
auparavant, ce que je souhaite éviter.

Greg


"Patrick BASTARD" message de news:%
Bonsoir, "Greg"

Vous nous dites " If Target.Column = 1 " pour la première colonne.
Avant de poster pour demander pour les 5 premières colonnes, avez-vous
essayé " If Target.Column < 6 " ?
Ne prenez surtout pas cette remarque comme un reproche, c'est juste pour
vous dire qu'on ne risque rien à tester par soi-même, et que même c'est
ainsi qu'on apprend le mieux.

--
Bien ,

Patrick




Bonsoir à tous,

Un jeu d'enfant pour vous, je pense... Une galère pour moi... Avec le
code suivant, seul un double clic en colonne A active le formulaire.
Comment l'activer pour les 5 premières colonnes du tableau? Pour un choix
de cellules? Pour tout le tableau?

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
If Target.Column = 1 Then
UserForm1.Show
End If
Cancel = True
End Sub


Merci à vous




Greg
Le #21338711
Merci Daniel!

Je mets ça dans mon petit dico personnel... Faut bien que je structure tout
ce que j'apprends ici si je ne veux pas rester (trop) dépendant...

à bientôt

Greg


"Daniel.C" news:
Bonsoir.
Pour les 5 premières colonnes, mets :

If Target.Column <= 5 Then

Pour une plage de cellules :

If not intersect(target,[A10:G50]) is nothing then

Pour certaines cellules :

If Not Intersect(Target, Range("A10, B20, C30")) Is Nothing Then

Cordialement.
Daniel

Bonsoir à tous,

Un jeu d'enfant pour vous, je pense... Une galère pour moi... Avec le
code suivant, seul un double clic en colonne A active le formulaire.
Comment l'activer pour les 5 premières colonnes du tableau? Pour un choix
de cellules? Pour tout le tableau?

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
If Target.Column = 1 Then
UserForm1.Show
End If
Cancel = True
End Sub


Merci à vous




Patrick BASTARD
Le #21338891
Re, "Greg"

Je reste coincé également vis à vis de mes cellules non vides qui
n'acceptent pas le code... sauf à supprimer le contenu de la cellule
auparavant, ce que je souhaite éviter.



Je ne suis pas parvenu à reproduire le problème.
Peut-être une autre partie de code que vous auriez omis de nous communiquer
?

--
Bien ,

Patrick


Greg


"Patrick BASTARD" message de news:%
Bonsoir, "Greg"

Vous nous dites " If Target.Column = 1 " pour la première colonne.
Avant de poster pour demander pour les 5 premières colonnes, avez-vous
essayé " If Target.Column < 6 " ?
Ne prenez surtout pas cette remarque comme un reproche, c'est juste pour
vous dire qu'on ne risque rien à tester par soi-même, et que même c'est
ainsi qu'on apprend le mieux.

--
Bien ,

Patrick




Bonsoir à tous,

Un jeu d'enfant pour vous, je pense... Une galère pour moi... Avec le
code suivant, seul un double clic en colonne A active le formulaire.
Comment l'activer pour les 5 premières colonnes du tableau? Pour un
choix de cellules? Pour tout le tableau?

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
If Target.Column = 1 Then
UserForm1.Show
End If
Cancel = True
End Sub


Merci à vous







Greg
Le #21339111
J'ai résolu une partie de mon problème:

En ajoutant la ligne "Selection.ClearContents", j'arrive à faire fonctionner
la macro: le formulaire s'ouvre. Peut-être devrais-je spécifier que suite au
remplissage du formulaire, le contenu de la cellule sera modifié.

Par contre, le fichier bugue régulièrement: quand je double-clique sur
certaines cellules, tout se bloque et le fichier ne répond plus. Je ne
comprends pas ce qui se passe.... Même sans ne rien ajouter. Je suis alors
obligé de passer par le gestionnaire des tâches pour fermer Excel. (???)

Il doit y avoir qqchose qui m'échappe.

Si l'un d'entre vous avait la gentillesse de regarder, voici le fichier:
http://cjoint.com/?diaJ55c0wF

Pour déclencher le bug, je clique par exemple en B62, feuille "emploi du
temps détaillé". Après, je ne peux plus rien faire.

Merci à vous si vous avez un peu de temps à me consacrer.

Greg






"Daniel.C" news:
Bonsoir.
Pour les 5 premières colonnes, mets :

If Target.Column <= 5 Then

Pour une plage de cellules :

If not intersect(target,[A10:G50]) is nothing then

Pour certaines cellules :

If Not Intersect(Target, Range("A10, B20, C30")) Is Nothing Then

Cordialement.
Daniel

Bonsoir à tous,

Un jeu d'enfant pour vous, je pense... Une galère pour moi... Avec le
code suivant, seul un double clic en colonne A active le formulaire.
Comment l'activer pour les 5 premières colonnes du tableau? Pour un choix
de cellules? Pour tout le tableau?

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
If Target.Column = 1 Then
UserForm1.Show
End If
Cancel = True
End Sub


Merci à vous




Patrick BASTARD
Le #21339231
Re, "Greg"

Il semble qu'en cliquant sur B62, votre usf "s'affiche" en dehors de
l'écran, ce qui fait qu'Excel attend soit un choix, soit une fermeture de
cet usf dont la propriété ShowModal a été définie à True.
Règlez la propriété Startup position à 2-CenterScreen, par exemple, et le
bug disparait.
Concernant vos fusions de cellule, je rejoins Steph pour vous les
déconseiller formellement. Si cette fonctionnalité est bien pratique pour
des documents de présentation, elle est à proscrire sur les feuilles sur
lesquelles des actions sont susceptibles d'être exécutées.
Double cliquez sur B17 pour vous en convaincre, défusionnez les cellules et
recommencez. Ca va mieux, non ?

--
Bien ,

Patrick



J'ai résolu une partie de mon problème:

En ajoutant la ligne "Selection.ClearContents", j'arrive à faire
fonctionner la macro: le formulaire s'ouvre. Peut-être devrais-je
spécifier que suite au remplissage du formulaire, le contenu de la cellule
sera modifié.

Par contre, le fichier bugue régulièrement: quand je double-clique sur
certaines cellules, tout se bloque et le fichier ne répond plus. Je ne
comprends pas ce qui se passe.... Même sans ne rien ajouter. Je suis alors
obligé de passer par le gestionnaire des tâches pour fermer Excel. (???)

Il doit y avoir qqchose qui m'échappe.

Si l'un d'entre vous avait la gentillesse de regarder, voici le fichier:
http://cjoint.com/?diaJ55c0wF

Pour déclencher le bug, je clique par exemple en B62, feuille "emploi du
temps détaillé". Après, je ne peux plus rien faire.

Merci à vous si vous avez un peu de temps à me consacrer.

Greg






"Daniel.C" news:
Bonsoir.
Pour les 5 premières colonnes, mets :

If Target.Column <= 5 Then

Pour une plage de cellules :

If not intersect(target,[A10:G50]) is nothing then

Pour certaines cellules :

If Not Intersect(Target, Range("A10, B20, C30")) Is Nothing Then

Cordialement.
Daniel

Bonsoir à tous,

Un jeu d'enfant pour vous, je pense... Une galère pour moi... Avec le
code suivant, seul un double clic en colonne A active le formulaire.
Comment l'activer pour les 5 premières colonnes du tableau? Pour un
choix de cellules? Pour tout le tableau?

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
If Target.Column = 1 Then
UserForm1.Show
End If
Cancel = True
End Sub


Merci à vous








Greg
Le #21339601
Bonjour Patrick et merci beaucoup!

Je vais partir travailler le coeur plus léger. Concernant les fusions de
cellules, je ne suis toujours pas convaincu: après avoir défusionné B17, que
dois-je recommencer? Car à vrai dire, pour l'instant, tout va bien...

- Il n'y aura pas de calcul particulier dans cette feuille. Les actions qui
sont susceptibles d'y être exécutées (cf. macro structure, un peu rustique
car j'y ai mis les mains...) semblent fonctionner et stables.
- C'est effectivement un document de présentation


Encore merci pour cette épine du pied!

à bientôt

Greg

"Patrick BASTARD" message de news:%
Re, "Greg"

Il semble qu'en cliquant sur B62, votre usf "s'affiche" en dehors de
l'écran, ce qui fait qu'Excel attend soit un choix, soit une fermeture de
cet usf dont la propriété ShowModal a été définie à True.
Règlez la propriété Startup position à 2-CenterScreen, par exemple, et le
bug disparait.
Concernant vos fusions de cellule, je rejoins Steph pour vous les
déconseiller formellement. Si cette fonctionnalité est bien pratique pour
des documents de présentation, elle est à proscrire sur les feuilles sur
lesquelles des actions sont susceptibles d'être exécutées.
Double cliquez sur B17 pour vous en convaincre, défusionnez les cellules
et recommencez. Ca va mieux, non ?

--
Bien ,

Patrick



J'ai résolu une partie de mon problème:

En ajoutant la ligne "Selection.ClearContents", j'arrive à faire
fonctionner la macro: le formulaire s'ouvre. Peut-être devrais-je
spécifier que suite au remplissage du formulaire, le contenu de la
cellule sera modifié.

Par contre, le fichier bugue régulièrement: quand je double-clique sur
certaines cellules, tout se bloque et le fichier ne répond plus. Je ne
comprends pas ce qui se passe.... Même sans ne rien ajouter. Je suis
alors obligé de passer par le gestionnaire des tâches pour fermer Excel.
(???)

Il doit y avoir qqchose qui m'échappe.

Si l'un d'entre vous avait la gentillesse de regarder, voici le fichier:
http://cjoint.com/?diaJ55c0wF

Pour déclencher le bug, je clique par exemple en B62, feuille "emploi du
temps détaillé". Après, je ne peux plus rien faire.

Merci à vous si vous avez un peu de temps à me consacrer.

Greg






"Daniel.C" news:
Bonsoir.
Pour les 5 premières colonnes, mets :

If Target.Column <= 5 Then

Pour une plage de cellules :

If not intersect(target,[A10:G50]) is nothing then

Pour certaines cellules :

If Not Intersect(Target, Range("A10, B20, C30")) Is Nothing Then

Cordialement.
Daniel

Bonsoir à tous,

Un jeu d'enfant pour vous, je pense... Une galère pour moi... Avec le
code suivant, seul un double clic en colonne A active le formulaire.
Comment l'activer pour les 5 premières colonnes du tableau? Pour un
choix de cellules? Pour tout le tableau?

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel
As Boolean)
If Target.Column = 1 Then
UserForm1.Show
End If
Cancel = True
End Sub


Merci à vous












Publicité
Poster une réponse
Anonyme