Double clic

L

Léa

Guest
Bonjour à tous,

j'aimerai savoir si il existe une procédure ou une macro qui permettent de double cliquer automatiquement des cellules.

Merci
 
G

Gérard DEZAMIS

Guest
Bonjour Léa

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
' Ta macro contenant tes instructions
End Sub

A mettre dans VBE de ta Feuille va déclencher la procédure de ta macro à chaque double clic

Est-ce là une réponse à ta question ?

@+GD
 

Robert

XLDnaute Barbatruc
Repose en paix
Bonjour Léa, bonjour le forum,

Ton prénom va succiter une grande émotion dans ce forum puisqu'une Léa très aimée de tous nous a quitté il y a peu.

Mais revenons à ce qui t'interesse. Je ne comprends pas exactement ce que tu désires. Le double-clic (ou la touche F2) permet, dans la cellule active, de passer en mode édition. Que veux-tu que la macro fasse après ?

Peut-être désires-tu lancer une macro à partir d'un double-clic ?

Il nous faudrait plus de détails pour pouvoir t'aider.


Édition :

Bonjour Gérard, nous nous sommes croisés.

Message édité par: Robert, à: 24/01/2006 11:17
 
L

Léa

Guest
Merci pour votre aide.

En fait j'ai fait une macro pour faire une mise en forme conditionnelle. Le souci c'est que ça fonctionne que quand je double clic sur mes cellulles vu que je ne saisi pas mes données. Donc j'aimerai trouver quelque chose qui double clic automatiquement sur mes cellules. je voudrai un bouton ki double clic toute mes celulles

Merci
 

Robert

XLDnaute Barbatruc
Repose en paix
Bonjour Léa, Gérard, bonjour le forum,

Peut-être pourrais-tu faire agir ta macro sur l'événement SelectionChange de la feuille. Comme ça il te suffirait de déplacer le curseur.

Autre possibilité, l'événement Open du classeur. Quoi qu'il en soit, le mieux serait que tu mettes ton fichier en pièce jointe ou bien le code de ta macro pour que l'on puisse essayer de te trouver la meilleure solution.
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Bonjour

Juste pour demander un peit truc à Léa : te serait-il possible de changer de pseudo STP
Tu comprendras la raison de ma demande dans le premier post de Robert qui faisait mention d'un évènement récent de la vie du forum qui a touché beaucoup d'entre nous.

Merci d'avance
 
L

Léa

Guest
Option Explicit
'---------------------------------------------------------------------------------------
' Auteur : Didier FOURGEOT (myDearFriend!)
' Date : 18/09/2005
' Sujet : MFC multiples
'---------------------------------------------------------------------------------------
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim TabTemp As Variant
Dim L As Long
Dim V As Variant
'Ne gère pas les sélections de plages
If Target.Cells.Count > 1 Then Exit Sub
'Vérifie la présence du format conditionnel 'spécial'
If Target.FormatConditions.Count < 1 Then Exit Sub
If Target.FormatConditions(1).Formula1 = '=mDF' Then
With Sheets('MFC')
'Charge les préférences dans un tableau variant temporaire
L = .Range('A65536').End(xlUp).Row
TabTemp = .Range(.Cells(1, 1), .Cells(L, 1)).Value
'Détermine le format à utiliser suivant la valeur de la cellule
If Target.Value = '' Then
L = 1
Else
For L = 2 To UBound(TabTemp, 1)
'Fonctionne en minuscule/majuscule pour les chaines de caractères
If UCase(Target.Value) = UCase(TabTemp(L, 1)) Then Exit For
Next L
End If
'Gestion des erreurs (impératif, compte tenu de la désactivation des évènements)
On Error GoTo Fin
Application.EnableEvents = False
'Applique le format (sauf les bordures)
.Cells(L, 2).Copy
V = Target.Formula
Target.PasteSpecial Paste:=xlPasteAllExceptBorders, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Target.Formula = V
'Il semble que sur Mac et dans certaines situations (non ciblées) le format
'conditionnel 'spécial' d'origine ne soit pas écrasé par le nouveau, il convient
'donc de s'en assurer avant de réimposer ce format spécial.
If Target.FormatConditions.Count < 1 Then Target.FormatConditions.Add Type:=xlExpression, Formula1:='=mDF'
Application.CutCopyMode = False
Application.EnableEvents = True
End With
End If
Exit Sub
Fin:
'En cas d'erreur dans le code, il convient impérativement de rétablir la gestion des
'évènements d'application pour la suite. Par une gestion d'erreur, on réaffecte la
'valeur True à la propriété Application.EnableEvents et on informe l'utilisateur qu'une
'erreur non gérée est survenue
MsgBox 'Erreur non gérée dans la procédure Workbook.SheetChange()' & vbLf & 'Erreur : ' & _
Err & ' ' & Err.Description, vbOKOnly, 'myDearFriend!'
Application.EnableEvents = True
End Sub



Voici la programmation que j'ai trouvé. seulement ça marche que si je saisi mes données ou si je double clic sur mes cellules. Donc je voudrai trouvé un système qui double clic automatiquement mes cellules pr que ce programme s'applique
 

Brigitte

XLDnaute Barbatruc
Bonjour à tous,

En effet, Robert, tu as raison, j'ai pris un coup dans le cigare en voyant le prénom de Léa.

Tu n'y es pour rien Léa, et bienvenue parmi nous, mais si tu décidais de t'inscrire, ce que je t'engage à faire pour profiter davantage du forum (messagerie, recherche sur ton prénom, avatar...), aurais tu la gentillesse d'utiliser un pseudo un peu différent ? De toute manière tu ne pourras pas utiliser Léa qui existe tjs dans la base de données.

Mais c tellement difficile de voir ce prénom... Surtout que son époux est très présent sur le forum : Jacques87...

Enfin c juste si tu veux bien.
Bonne journée
 

myDearFriend!

XLDnaute Barbatruc
Bonsoir Yo, Brigitte, Gérard, Robert, Pascal, le Forum,

Tout d'abord, merci Yo d'avoir accepté ce changement de pseudo.

Pour que nous puissions comprendre Yo, il faudrait que tu sois plus explicite et que tu joignes un exemple clair de ton problème.
Visiblement tes données 'cibles' ne sont pas saisies au clavier par l'utilisateur... sont-elles importées ? Si oui, comment ? Sont-elles résultantes de formule de calcul ? Sont-elles fluctuantes ou Invariables ?

La procédure que tu as récupérée à pour objectif de 'simuler' une Mise en Forme Conditionnelle gérant plus de 3 conditions (ce qui n'est pas possible pour une MFC classique). Pour rappel, une MFC est une mise en forme programmée pour s'adapter automatiquement aux changements de valeurs d'une cellule ou d'une plage. Son utilisation n'a donc d'intérêt que si les valeurs des cellules cibles sont changeantes.

Cette macro simule donc une MFC et base son fonctionnement sur l'évènement Change() de la feuille de calcul. Cet évènement Change() peut-être déclenché par l'une ou l'autre des actions suivantes : [ol][ul][li]l'utilisateur saisit au clavier une nouvelle donnée et valide sa saisie en changeant de sélection ou en frappant sur la touche Entrée.[/li]
[li]l'utilisateur entre en mode d'édition de cellule par double-clic dans la cellule ou par simple clique dans la barre de formule et, sans modifier le contenu, re-valide la valeur existante (comme ci-dessus).[/li]
[li]La cellule (ou plage de cellules) est mise à jour par macro VBA.[/li][/ul][/ol]En aucun cas, la macro présentée plus haut ne pourra détecter, telle quelle, le changement de valeurs issues d'un recalcul de formules par exemple. Si tel est le cas dans ton classeur...

Cordialement,
 

Statistiques des forums

Discussions
312 216
Messages
2 086 350
Membres
103 194
dernier inscrit
rtison