Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 64
Default How to avoid re-initialisation when Unloading form

Hi,
It's got to be a newbie question:
I have, for a change, stuff in MyForm_Initialize that can yield an error.
I trap it with On Error GoTo, where Msg explains it to user.
Now, if there's no other statements past Msg, I get to see troubled form
anyway.
If I put Unload Me after Msg then this triggers Initialize and there we go
again with error, trapping of it, Msg etc.
Looping, mind you.
How do you avoid this situation elegantly?
TIA
Paul


  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 27,285
Default How to avoid re-initialisation when Unloading form

Then name of the initialize event should be

Private Sub Userform_Initialize()

so I am not sure what you get wtih MyForm_Initialize

The initialize event shouldn't be fired by an unload command unless the the
form is not loaded. Are you using

Unload Me

--
Regards,
Tom Ogilvy

"count" wrote in message
...
Hi,
It's got to be a newbie question:
I have, for a change, stuff in MyForm_Initialize that can yield an error.
I trap it with On Error GoTo, where Msg explains it to user.
Now, if there's no other statements past Msg, I get to see troubled form
anyway.
If I put Unload Me after Msg then this triggers Initialize and there we go
again with error, trapping of it, Msg etc.
Looping, mind you.
How do you avoid this situation elegantly?
TIA
Paul




  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 11,272
Default How to avoid re-initialisation when Unloading form

Paul,

I didn't quite get what you did, but I got an error after the Unload. I got
around it like so

Dim fShutDown As Boolean

Private Sub UserForm_Activate()
If fShutDown Then
Unload Me
End If
End Sub

Private Sub UserForm_Initialize()
Dim a As Long
On Error GoTo uf:
a = "abc"
Exit Sub
uf:
MsgBox "hello"
Err.Clear
fShutDown = True
End Sub


--

HTH

RP
(remove nothere from the email address if mailing direct)


"count" wrote in message
...
Hi,
It's got to be a newbie question:
I have, for a change, stuff in MyForm_Initialize that can yield an error.
I trap it with On Error GoTo, where Msg explains it to user.
Now, if there's no other statements past Msg, I get to see troubled form
anyway.
If I put Unload Me after Msg then this triggers Initialize and there we go
again with error, trapping of it, Msg etc.
Looping, mind you.
How do you avoid this situation elegantly?
TIA
Paul




  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 64
Default How to avoid re-initialisation when Unloading form


Użytkownik "Tom Ogilvy" napisał w wiadomości
...
Then name of the initialize event should be

Private Sub Userform_Initialize()

so I am not sure what you get wtih MyForm_Initialize


Sure the name is indeed Userform_Initialize() .... just my deconcentration -
pls forgive :)

Picture is worth 1000 words,,,,
'-------------- code below lives in sheet "Menu"
Private Sub Label7_Click() 'add doc using Ahold setup
WZType = "WZAhold" 'that's just a parm passed
AddWZTyped.Show
End Sub
'---------------
Private Sub UserForm_Initialize() ' this code within AddWZTyped form
....
On Error GoTo NoPrice
.....
With AddWZTyped.Controls.Item("Opis" & Trim(Str(n)))
.Caption =
Sheets("Cennik").Cells(Sheets("Cennik").Range("A:A ").Find(What:=.... Find
might fail
End With
..... more statements SPOT
Exit Sub
NoPrice:
MsgBox ("Small prob" & vbCrLf & "No entry for item " & rng(n, 1) & vbCrLf &
"Pls check setup [...]")
Unload Me
End Sub
'-----------------------------------------------------------
When Unload Me is omitted, the form still shows crippled by no execution of
"more statements SPOT"
With Unload Me it aborts at line AddWZTyped.Show "Object variable not..."
When Debug and F8-ting, it goes into _Initialize and aborts again when .Find
unsuccessful
Should I try to Load form before .Show?

Thanks Tom in advance - I haven't had situation before where error can
strike at _Initialize.
Paul

Regards,
Tom Ogilvy

"count" wrote in message
...
Hi,
It's got to be a newbie question:
I have, for a change, stuff in MyForm_Initialize that can yield an
error.
I trap it with On Error GoTo, where Msg explains it to user.
Now, if there's no other statements past Msg, I get to see troubled form
anyway.
If I put Unload Me after Msg then this triggers Initialize and there we
go
again with error, trapping of it, Msg etc.
Looping, mind you.
How do you avoid this situation elegantly?
TIA
Paul






  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 27,285
Default How to avoid re-initialisation when Unloading form

The easiest approach would be to do your checking in the code that
shows/loads the userform. If Find fails, don't issue the command to show
the form (just diplay your warning message).

--
Regards,
Tom Ogilvy

"count" wrote in message
...

Użytkownik "Tom Ogilvy" napisał w wiadomości
...
Then name of the initialize event should be

Private Sub Userform_Initialize()

so I am not sure what you get wtih MyForm_Initialize


Sure the name is indeed Userform_Initialize() .... just my

deconcentration -
pls forgive :)

Picture is worth 1000 words,,,,
'-------------- code below lives in sheet "Menu"
Private Sub Label7_Click() 'add doc using Ahold setup
WZType = "WZAhold" 'that's just a parm passed
AddWZTyped.Show
End Sub
'---------------
Private Sub UserForm_Initialize() ' this code within AddWZTyped form
...
On Error GoTo NoPrice
....
With AddWZTyped.Controls.Item("Opis" & Trim(Str(n)))
.Caption =
Sheets("Cennik").Cells(Sheets("Cennik").Range("A:A ").Find(What:=.... Find
might fail
End With
.... more statements SPOT
Exit Sub
NoPrice:
MsgBox ("Small prob" & vbCrLf & "No entry for item " & rng(n, 1) & vbCrLf

&
"Pls check setup [...]")
Unload Me
End Sub
'-----------------------------------------------------------
When Unload Me is omitted, the form still shows crippled by no execution

of
"more statements SPOT"
With Unload Me it aborts at line AddWZTyped.Show "Object variable not..."
When Debug and F8-ting, it goes into _Initialize and aborts again when

..Find
unsuccessful
Should I try to Load form before .Show?

Thanks Tom in advance - I haven't had situation before where error can
strike at _Initialize.
Paul

Regards,
Tom Ogilvy

"count" wrote in message
...
Hi,
It's got to be a newbie question:
I have, for a change, stuff in MyForm_Initialize that can yield an
error.
I trap it with On Error GoTo, where Msg explains it to user.
Now, if there's no other statements past Msg, I get to see troubled

form
anyway.
If I put Unload Me after Msg then this triggers Initialize and there we
go
again with error, trapping of it, Msg etc.
Looping, mind you.
How do you avoid this situation elegantly?
TIA
Paul








Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Not Unloading a UserForm Mike[_49_] Excel Programming 1 January 29th 04 11:45 PM
Unloading User Forms? Robert Nicholson Excel Programming 1 October 22nd 03 04:36 PM
Unloading A Form Chrissy[_4_] Excel Programming 1 October 15th 03 02:17 PM
Unloading an Add-In Jack Excel Programming 1 October 1st 03 09:39 AM
How can I avoid form destruction?? Dag Johansen Excel Programming 0 August 27th 03 09:03 AM


All times are GMT +1. The time now is 03:32 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright Š2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"