Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi,
I've written a more complex program in VB6 with a single form, so that I can use it for work in Excel multiple times. This way, I don't have to use VBA code in the modules. It works great! I want to thank people who have helped me here in the past. It's been a part time project for me over the months - and it's been a lot of fun. I have one problem. How do I get the VB6 form to stay in the foreground? With Excel 2000 and better we could write this with VBA in a module (for example): "frmText.Show vbModeless" and it worked fine. But now with VB6, I can't do the same, so that the VB6 form is in the foreground. I found something interesting on the internet that was this: Const HWND_TOPMOST = -1 Const HWND_NOTOPMOST = -2 Const SWP_NOSIZE = &H1 Const SWP_NOMOVE = &H2 Const SWP_NOACTIVATE = &H10 Const SWP_SHOWWINDOW = &H40 Private Declare Sub 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) Private Sub Form_Activate() 'Set the window position to topmost SetWindowPos Me.hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOACTIVATE Or SWP_SHOWWINDOW Or SWP_NOMOVE Or SWP_NOSIZE End Sub Would this work for a VB6 form to keep it in the foreground? Is there another better way? I appreciate the help. I thought I would run it by a few of you before I started experimenting with this code and others that I might find later. Thanks, Rick |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Chart to foreground | Excel Discussion (Misc queries) | |||
Change background & foreground colors in Comment box | Excel Discussion (Misc queries) | |||
Clicking on chart does not bring to foreground | Charts and Charting in Excel | |||
Button or key to conditionally change text foreground color? | New Users to Excel | |||
background-foreground color | Charts and Charting in Excel |