View Single Post
  #4   Report Post  
Posted to microsoft.public.excel.programming
Dave Peterson Dave Peterson is offline
external usenet poster
 
Posts: 35,218
Default Referring to BeforeDoubleClick

I'm not sure I understand.

You'd still make the variable public and put it in a General module.

Then in the userform code:

Private Sub OKButton_Click()
On Error Resume Next
If optionRightAdd Then
myOption = 1
Run Macro50
End If
If OptionLeftAdd Then
myoption = 2
Run Macro51
End If
Unload UserForm1
End Sub

Then the _BeforeDoubleclick would use that variable (like in the previous post).

art wrote:

Thanks for your help, but I don't understand exactly.
I assume that you want to make MyOptions public.
But where do I put in What?

I have the Userform code and the Module code containing the
BeforeDoubleClick Code. Now, what do I do now? What should I place in the new
module which code? And What should I change in the other ones?

Thanks for your help. Please help me thru, until the end.

Thanks again.

"Dave Peterson" wrote:

You could create a public variable in a General module -- not behind the
worksheet and not in the userform's code.

Public myOption as long 'or boolean

Then change that value to whatever you need in the code for the userform.

Then you can check that variable's value in your event code:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, _
Cancel As Boolean)
If Target.Cells.Count 1 Then Exit Sub

Cancel = True 'stop editing in cell

if myoption = 1 then
'do the stuff for option 1
else
'do the stuff for option 2
end if

End Sub

art wrote:

Hello All:

I have a VBA Code Using the BeforeDoubleClick.
My Question is how do I refer to that Sub?

I want to make that if the user selects from a userform option 1 then
BeforeDoubleClick should one way, if user selects option 2 then
BeforeDoubleClick should work differently. Is there a way to do this? How Can
I do this? Below are the BeforeDoubleClick code and the userform code that I
want to use.

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, _
Cancel As Boolean)
If Target.Cells.Count 1 Then Exit Sub

Cancel = True 'stop editing in cell
If IsNumeric(Target.Value) Then
Target.Value = Target.Value + 1
End If
End Sub

Private Sub OKButton_Click()
On Error Resume Next
If optionRightAdd Then
Run Macro50
End If
If OptionLeftAdd Then
Run Macro51
End If
Unload UserForm1
End Sub

Thanks in Advance.


--

Dave Peterson


--

Dave Peterson