ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Can you check a show modal property (https://www.excelbanter.com/excel-programming/417839-can-you-check-show-modal-property.html)

jc

Can you check a show modal property
 
If you hit F1 on the ShowModal property in the Property box of a user form it
says it is read only.

In Sub UserForm_Activate the code:

If Me.ShowModal = False Then
MsgBox "Modeless"
End If

Causes Compile Error: Method ro data member not found

Is there code that can be used to check if a UserForm is Modal or Modeless?
--
CroceJC

dan dungan

Can you check a show modal property
 
Hi JC

I don't know, but now I'm curious.

I think to test for modeless, the form would have to be loaded.

But it seems that your code would determine how to load the form; so,
I don't understand how you wouldn't know if the form was modeless or
modal.

How would you use such a function if it were to exist?

Dan

jc

Can you check a show modal property
 
I want to use the same form in a case where I want to use it modal and
another case modeless. So when I instanciate it, the Userform_Initialize
procedure can test if modal or modeless and make some adjustments based on
this.
--
CroceJC


"dan dungan" wrote:

Hi JC

I don't know, but now I'm curious.

I think to test for modeless, the form would have to be loaded.

But it seems that your code would determine how to load the form; so,
I don't understand how you wouldn't know if the form was modeless or
modal.

How would you use such a function if it were to exist?

Dan


Gary Keramidas

Can you check a show modal property
 
just load it anyway you want

Sub test()
UserForm1.Show vbModal
End Sub

Sub test2()
UserForm1.Show vbModeless
End Sub


--


Gary

"jc" wrote in message
...
I want to use the same form in a case where I want to use it modal and
another case modeless. So when I instanciate it, the Userform_Initialize
procedure can test if modal or modeless and make some adjustments based on
this.
--
CroceJC


"dan dungan" wrote:

Hi JC

I don't know, but now I'm curious.

I think to test for modeless, the form would have to be loaded.

But it seems that your code would determine how to load the form; so,
I don't understand how you wouldn't know if the form was modeless or
modal.

How would you use such a function if it were to exist?

Dan




jc

Can you check a show modal property
 
I don't think you read my previous post close enough. I want to modify the
form when I use it modal so in initiation I need to check what type of show
it is.
--
CroceJC


"Gary Keramidas" wrote:

just load it anyway you want

Sub test()
UserForm1.Show vbModal
End Sub

Sub test2()
UserForm1.Show vbModeless
End Sub


--


Gary

"jc" wrote in message
...
I want to use the same form in a case where I want to use it modal and
another case modeless. So when I instanciate it, the Userform_Initialize
procedure can test if modal or modeless and make some adjustments based on
this.
--
CroceJC


"dan dungan" wrote:

Hi JC

I don't know, but now I'm curious.

I think to test for modeless, the form would have to be loaded.

But it seems that your code would determine how to load the form; so,
I don't understand how you wouldn't know if the form was modeless or
modal.

How would you use such a function if it were to exist?

Dan





Dave Peterson

Can you check a show modal property
 
Maybe you can add a public variable and make sure you change it before you show
the userform. Then check that variable's value when you need to.

Public UserFormMode as long

Sub test()
userformmode = vbmodal
UserForm1.Show userformmode
End Sub
Sub test2()
userformmode = vbmodeless
UserForm1.Show userformmode
End Sub

Then in your code...

if userformmode = vbmodal then
...


jc wrote:

I don't think you read my previous post close enough. I want to modify the
form when I use it modal so in initiation I need to check what type of show
it is.
--
CroceJC

"Gary Keramidas" wrote:

just load it anyway you want

Sub test()
UserForm1.Show vbModal
End Sub

Sub test2()
UserForm1.Show vbModeless
End Sub


--


Gary

"jc" wrote in message
...
I want to use the same form in a case where I want to use it modal and
another case modeless. So when I instanciate it, the Userform_Initialize
procedure can test if modal or modeless and make some adjustments based on
this.
--
CroceJC


"dan dungan" wrote:

Hi JC

I don't know, but now I'm curious.

I think to test for modeless, the form would have to be loaded.

But it seems that your code would determine how to load the form; so,
I don't understand how you wouldn't know if the form was modeless or
modal.

How would you use such a function if it were to exist?

Dan





--

Dave Peterson

jc

Can you check a show modal property
 
That would get the job done.
Thanks
--
CroceJC


"Dave Peterson" wrote:

Maybe you can add a public variable and make sure you change it before you show
the userform. Then check that variable's value when you need to.

Public UserFormMode as long

Sub test()
userformmode = vbmodal
UserForm1.Show userformmode
End Sub
Sub test2()
userformmode = vbmodeless
UserForm1.Show userformmode
End Sub

Then in your code...

if userformmode = vbmodal then
...


jc wrote:

I don't think you read my previous post close enough. I want to modify the
form when I use it modal so in initiation I need to check what type of show
it is.
--
CroceJC

"Gary Keramidas" wrote:

just load it anyway you want

Sub test()
UserForm1.Show vbModal
End Sub

Sub test2()
UserForm1.Show vbModeless
End Sub


--


Gary

"jc" wrote in message
...
I want to use the same form in a case where I want to use it modal and
another case modeless. So when I instanciate it, the Userform_Initialize
procedure can test if modal or modeless and make some adjustments based on
this.
--
CroceJC


"dan dungan" wrote:

Hi JC

I don't know, but now I'm curious.

I think to test for modeless, the form would have to be loaded.

But it seems that your code would determine how to load the form; so,
I don't understand how you wouldn't know if the form was modeless or
modal.

How would you use such a function if it were to exist?

Dan





--

Dave Peterson



All times are GMT +1. The time now is 01:28 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com