Solved

Bring Form to Front

Posted on 2008-10-21
9
1,497 Views
Last Modified: 2013-11-28
I have a form that is launched from another form.  The first thing it does when it comes up is bring up a file browser so that the user can select an Excel workbook.  The user is then supposed to work with the launched form to interact with the Excel workbook.  However, in most cases the Excel workbook completely covers the launched form.  So the user never sees it to know that there is anything to do.

Is there a way to bring the launched form back on top of the Excel workbook?  I don't want my launched form to become a topmost form that always stays on top.  I just want it to pop to the front.
0
Comment
Question by:dastrw
9 Comments
 
LVL 8

Expert Comment

by:Bradley Haynes
ID: 22770292
Use the form load event in VBA to load form on top.
0
 
LVL 2

Author Comment

by:dastrw
ID: 22770386
Could you give me some sample code?
0
 
LVL 7

Expert Comment

by:FER_G
ID: 22770657
You must use the "SetWindowPos API"

Public Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private Const HWND_ONTOP = -1
Private Const flags = SWP_NOMOVE Or SWP_NOSIZE

SetWindowPos frm1.hwnd, HWND_ONTOP, 0&, 0&, 0&, 0&, flags

So when you call the form (frm1) then, you call the "SetWindowPos API" and the form will allways be on top

FerG
Saludos
--
Ing. Fernando D. Giletta
San Fco. Cba. Argentina.
0
Ransomware: The New Cyber Threat & How to Stop It

This infographic explains ransomware, type of malware that blocks access to your files or your systems and holds them hostage until a ransom is paid. It also examines the different types of ransomware and explains what you can do to thwart this sinister online threat.  

 
LVL 2

Author Comment

by:dastrw
ID: 22770698
I already saw that comment.  I don't want the window to always be on top.  That will be annoying for the user.  I just want the form to come to the front.
0
 
LVL 74

Accepted Solution

by:
Jeffrey Coachman earned 500 total points
ID: 22771098
dastrw

Try using the AppActivate command:
http://msdn.microsoft.com/en-us/library/dyz95fhy(VS.80).aspx

dastrw
0
 
LVL 2

Author Closing Comment

by:dastrw
ID: 31508441
This is exactly what I needed.
0
 
LVL 74

Expert Comment

by:Jeffrey Coachman
ID: 22771608
;-)
0
 
LVL 2

Author Comment

by:dastrw
ID: 22771716
There is just a minor problem with the AppActivate method:  If I manually bring up the launched form then just it shows up in front of my Excel workbook.  If I use the AppActivate command then the entire Access application comes up in front of the Excel workbook.  It would be nice if I could get AppActivate to just show the launched form, but the launched form doesn't have its own individual menu name as far as Windows is concerned.  This is just nit-picking though.
0
 
LVL 74

Expert Comment

by:Jeffrey Coachman
ID: 22772703
Yeah,
This is probably about as simple as it gets without using complicated API Code.

Jeff
0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

When designing a form there are several BorderStyles to choose from, all of which can be classified as either 'Fixed' or 'Sizable' and I'd guess that 'Fixed Single' or one of the other fixed types is the most popular choice. I assume it's the most p…
In a multiple monitor setup, if you don't want to use AutoCenter to position your popup forms, you have a problem: where will they appear?  Sometimes you may have an additional problem: where the devil did they go?  If you last had a popup form open…
Familiarize people with the process of retrieving data from SQL Server using an Access pass-thru query. Microsoft Access is a very powerful client/server development tool. One of the ways that you can retrieve data from a SQL Server is by using a pa…
In Microsoft Access, learn how to use Dlookup and other domain aggregate functions and one method of specifying a string value within a string. Specify the first argument, which is the expression to be returned: Specify the second argument, which …

789 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question