Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

[VBA]Marquage du clic sur une image de userform

  • Initiateur de la discussion titibobo
  • Date de début
T

titibobo

Guest




Lors du clic cela enregiste les coodonnées du pointeur par

Code:
Private Sub carte_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Me.cics = X
Me.cigrec = Y
End Sub

CE que je veux c'est lorsqu'on clic sur l'image du userform un point ou petit cercle s'affiche et reste.

Vous pensez que c'est réalisable ?

Code:
Private Sub carte_click()
Range('start').Offset(Ligne, 0) = Ligne + 1
Range('start').Offset(Ligne, 1) = cics
Range('start').Offset(Ligne, 2) = cigrec
controle = MsgBox('Etes-vous sur du lieu ? ', vbYesNo, 'Contrôle')
Image2.Visible = True
If controle = vbNo Then
    Range('start').Offset(Ligne, 1) = cics
    Range('start').Offset(Ligne, 2) = cigrec
Else
dataclient.Show
Ligne = Ligne + 1

End If
End Sub

le mieux c'est de créer une imae, de l'importe et de la rendre visible au clic, maisje n'arrive pas à la placer sur le lieu du clic :huh:
 
T

titibobo

Guest
Image2.Visible = True
Image2.Top = cics
Image2.Left = cigrec


Par contre au 2eme clic l'image sera déplacée et non copiée ..
et il y a un décalage aléatoire de la position du cercle
inch:
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Bonjour Titi, le Forum

Je ne saisis pas trop ton histoire, dans le titre tu parles de : 'Marquage du clic sur une image de userform'... Pour ça ok

Dans ton message ton code parle de 'Range' (Range('start').Offset(Ligne, 0) = Ligne + 1) Pour ça, je n'ai pas compris !!!

Quoiqu'il en soit si ça peut te faire avancer, prends un classeur vierge et introduis :

[li]1 UserForm[/li]
[li]2 Labels[/li]

Dans le Private Module du UserForm copie ce Code :



Ce devrait te faire avancer...
Bon Aprèm
@+Thierry

EDITION !!!

Nb dans l'initialize '.BorderColor' à la place de 'BackColor' du Label2... Oups !!!

Message édité par: _Thierry, à: 28/03/2005 13:46

Message édité par: _Thierry, à: 28/03/2005 13:47
 

titibobo

XLDnaute Nouveau
(Range('start').Offset(Ligne, 0) = Ligne + 1)
c'est juste pour dire d'affichier dans la celule nommé start un compteur de ligne puis les coordonées x et y dans les 2 autres colonnes adjacentes.


je regarde ton code merci !
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…