VBA open file from a form

J

jlclyde

I am trying to open a file from a userForm....When stepping through
the code; when it gets to the FileNm part where it sets the Files name
to open, it runs to the end. I am pretty sure this is not normal.
How do I get this back to where I can step through line by line with
F8? Code is below.

Thanks,
Jay

Private Sub Enter_Click()
Dim LastRow As Long
Dim FileNm As String
Dim Master As Workbook
ChDir "G:\Masters\"
LastRow = Range("A65536").End(xlUp).Row + 1

FileNm = Application.GetOpenFilename(Title:="Please choose a file
to import.", MultiSelect:=False)
Set Master = Workbooks.Open(Filename:=FileNm, ReadOnly:=True)
With Master.Sheets(1)


End With
Range("A" & LastRow).Value = Now

Unload Me
End Sub
 
J

JLatham

Well, hard to say - a lot could be going on when you hit the Set Master =
statement.
You could put a Stop statement right after that one as:

Set Master = Workbooks.Open(Filename:=FileNm, ReadOnly:=True)
Stop
With Master.Sheets(1)

Or put a breakpoint at the With Master.Sheets(1) statement. To put a
breakpoint in, move your cursor to the left of the code line, into the gray
bar running down the left side of the code window and just click there. A
red dot will appear indicating the breakpoint (much the same as a Stop
instruction). To remove the breakpoint later, just click on it or use
Debug-->Clear All Breakpoints ([Ctrl]+[Shift]+[F9]).
 
J

JLatham

Also, remember that once you do open the Master book, it's going to become
the active workbook, and your
Range("A" & lastRow).Value=Now
statement is going to take affect on the active sheet in the Master workbook
unless you re-activate "ThisWorkbook" or specify the sheet in ThisWorkbook to
write that value to, as
ThisWorkbook.Activate
Range("A" & LastRow).Value = Now

or
ThisWorkbook.Worksheets("somesheetname").Range("A" & LastRow).Value = Now
 
J

jlclyde

Also, remember that once you do open the Master book, it's going to become
the active workbook, and your
Range("A" & lastRow).Value=Now
statement is going to take affect on the active sheet in the Master workbook
unless you re-activate "ThisWorkbook" or specify the sheet in ThisWorkbook to
write that value to, as
ThisWorkbook.Activate
Range("A" & LastRow).Value = Now

or
ThisWorkbook.Worksheets("somesheetname").Range("A" & LastRow).Value = Now








- Show quoted text -

I fully inderstand what you are gettign at...I just have no idea why
it is doing this. It just started doing this today. I use to be bale
to step through line by line even when opening a workbook. Now for
some reason it just takes off and finishes the macro. I do not want
to have to set my whole code as breaks to step through it.

Thanks for trying,
Jay
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top