View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
NickHK NickHK is offline
external usenet poster
 
Posts: 4,391
Default ....SPOT THE USERFORM!!!!.....

If you set the StartUpPosition to 0 - Manual, it will reappear in the last
position.
You should set the correct position before the first .Show, otherwise it
will show in the top, left corner.
Load UserForm1

Private Sub UserForm_Initialize()
Me.Move 100, 100
Me.Show , vbModeless
End Sub

But you could show the userform modeless (as shown), so you not have to hide
to show the InputBox.

NickHK

"WhytheQ" wrote in message
ups.com...
I have the following little routine:

'===================
Private Sub CmdSelectData_Click()
Me.Hide
Call SelectDataRow
Me.Show
End Sub
'===================

All looks fairly standard!

The called routine, "SelectDataRow", is the following:

'===================
Sub SelectDataRow()
'finds the last used row in the sheet that the user presently
has active
Dim LastUsedRow As Integer
LastUsedRow = ActiveSheet.Cells(Rows.Count, 8).End(xlUp).Row

'get the user to select a row of data for moving to the Log
Application.Calculation = xlCalculationAutomatic
On Error Resume Next
Set InvoiceRange = Application.InputBox("Either: " & vbCrLf & _
"1.Confirm the present selection by hitting OK" & vbCrLf & _
"2.Select a cell in another row and hit OK" & vbCrLf & _
"3.Hit CANCEL to stop the macro here", _
"RELEVANT PAYMENT INFORMATION", "A" & LastUsedRow & ":L" & _
LastUsedRow, , , , , 8)
On Error GoTo 0

'if nothing has been selected on the activesheet then this is
flagged to the user
If InvoiceRange Is Nothing Then
MsgBox "No cells on the ACTIVESHEET have been selected"
End If

End Sub
'===================


The above looks pretty standard to me aswell. The problem is that when
the code has run the routine SelectDataRow and then hits the line
Me.Show the userform appears in a different position on the screen!! Do
I need to change one of the userform's property's in Design Time - or
will I need to write some extra code to be executed in run time?

Any help greatly appreciated,
Jason.