DblClick in UserForm

Status
Niet open voor verdere reacties.

hondel

Gebruiker
Lid geworden
29 okt 2008
Berichten
66
Ik heb in Excel 2003 een UserForm met een CommandButton. Nu wil ik met die knop twee verschillende Sub’s starte. Een Sub bij klik en een andere Sub bij dubbel klik. Dit lukt maar bij dubbel klik wordt altijd eerst de Sub van een klik uitgevoerd waarna de Sub van dubbel klik wordt uitgevoerd. Dit is niet mijn bedoeling. Bij dubbel klik moet alleen de Sub van dubbel klik uitgevoerd worden.

Code:
Private Sub PT1_Click()

PTLezen (35)

End Sub


Private Sub PT1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)

PTOpslaan (35)

End Sub

Is hier een oplossing voor?
 
Voorbeeld

Ik heb er voor de duidelijkheid een voorbeeld bij gemaakt.
 

Bijlagen

  • Klik.xls
    27,5 KB · Weergaven: 26
Hey

Is het een optie dat de dubbelklik vervangen wordt door een rechtermuisklik?
 
Volgens mijn vorige suggestie:

Code:
Private Sub PS1_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)

    If Button = xlPrimaryButton Then
        Debug.Print "Links"
    ElseIf Button = xlSecondaryButton Then
        Debug.Print "Rechts"
    End If

End Sub

Of:

Code:
Private Sub PS1_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)

    Select Case Button
    Case 1: Debug.Print "Links"
    Case 2: Debug.Print "Rechts"
    End Select

End Sub

De Debug.Print regels moet jij nog vervangen.

Wigi
 
Bedankt

Weer een schot in de roos Wigi.
Hier kan ik prima mee uit de voeten.

Zo zie je maar weer “Als het met Excel niet kan, dan kan het met Excel wel op een andere manier”.

Bedank, nu kan ik weer lekker verder bouwen.
 
Hoi Hondel,

Iets te laat terug van m'n werk :)
Ik heb bijna dezelfde oplossing als Wigi, alleen werk ik met de linker muisknop in combinatie met Shift.
Dus Shift + Linker muisknop slaat de preset op terwijl alleen de linker muisknop de preset laat zien in de TextBox.

Code:
Private Sub PS1_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Select Case Shift
Case 1: [B1] = TextBox.Value
MsgBox "Preset 1 Stored"
End Select
Select Case Button
Case 1: TextBox.Value = [B1]
End Select
End Sub

Groeten van Trevor
 

Bijlagen

  • Klik_Trevor.xls
    40,5 KB · Weergaven: 26
Ook een goede!

Ook een goede!

Ik ga je advies opvolgen en een avondje appels en peren verglijken.
Morgen aan een paar collega’s vragen wat hun het meest logies vinden (zij moeten er mee werken).

Thx
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan