Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1
Default opening form in new instance of excel

I've been exploring alot of threads about this subject but haven't
found the right solution yet.

My problem is that i have an excel sheet with a vba form uploaded on
our intranet. When a user downloads this file and immediately opens it,
it wil open the form through the workbook_open event.
No problem so far.
But when this user has already an instance of excel running the
userform opens on the background in this instance and is not always in
focus.

What i want is to open this form in a new instance of excel if excel
is already running. I found a function that tests if excel is running.
But how can i control this workbook being opened in a new instance?
When i use the workbook_open event the choice has already been made for
me.

Anyone a good idea?

This is in dummy code what i want

If fIsAppRunning("Excel") Then
Set objXL = CreateObject("Excel.Application")
frmEAED.Show ' to open this form in the objXL instance



Regards,

Bert Nijkoops

  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 5,600
Default opening form in new instance of excel

Hi Bert,

You can of course start a new Excel instance, possibly within that opening a
copy of your project with form to auto run. But that would not only be
another instance of Excel but another 'instance' (for want of a better word)
of your project with userform.

I can't replicate your intranet scenario but there are ways to ensure 'your'
excel application is both visible and the front window, perhaps with API's

Private Declare Function FindWindowA Lib "user32" _
(ByVal lpClasssName As String, _
ByVal lpWindowName As String) As Long

Private Declare Function SetForegroundWindow Lib "user32" _
(ByVal hwnd As Long) As Long

Dim appHwin As Long

Sub AppToFront()
'Application.Visible = True ' ?

appHwin = FindWindowA(vbNullString, Application.Caption)

SetForegroundWindow appHwin

End Sub

Not sure but perhaps even simpler with AppActivate, eg

AppActivate "Microsoft Excel" 'if sure only one instance
or
AppActivate Me.Caption ' in a userform

Regards,
Peter T

"riva91" wrote in message
ups.com...
I've been exploring alot of threads about this subject but haven't
found the right solution yet.

My problem is that i have an excel sheet with a vba form uploaded on
our intranet. When a user downloads this file and immediately opens it,
it wil open the form through the workbook_open event.
No problem so far.
But when this user has already an instance of excel running the
userform opens on the background in this instance and is not always in
focus.

What i want is to open this form in a new instance of excel if excel
is already running. I found a function that tests if excel is running.
But how can i control this workbook being opened in a new instance?
When i use the workbook_open event the choice has already been made for
me.

Anyone a good idea?

This is in dummy code what i want

If fIsAppRunning("Excel") Then
Set objXL = CreateObject("Excel.Application")
frmEAED.Show ' to open this form in the objXL instance



Regards,

Bert Nijkoops



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
excel docs opening in their own instance - not all in one jcsfny Excel Discussion (Misc queries) 3 September 23rd 08 07:30 PM
Excel opening another instance automatically DanF Excel Discussion (Misc queries) 0 July 9th 08 03:11 PM
opening a new instance of Excel gb4 Setting up and Configuration of Excel 0 April 10th 08 04:48 PM
keep Excel from opening 2nd instance widman Excel Discussion (Misc queries) 0 April 30th 06 01:35 PM
Keep Excel from opening new instance widman Excel Discussion (Misc queries) 7 October 1st 05 01:53 AM


All times are GMT +1. The time now is 02:06 AM.

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

About Us

"It's about Microsoft Excel"