View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Dave Peterson Dave Peterson is offline
external usenet poster
 
Posts: 35,218
Default How to detect excess rows in txt or csv files before opening?

I ran that code against a giant text file that I have and changed the msgbox to
debug.print and got this back:

1,499,022

Those 1.5 million lines were read in pretty quickly.

Printing the time before and after showed:
13:36:35
1,499,022
13:36:36

(about a second)

====
Are you sure that it's this portion of the code that's causing the trouble?


39N 95W wrote:

Windows XP Pro SP2
Excel 2002 SP3

I am trying to detect if a txt or csv file has more than 65,536 lines before
opening it. I've written this little tidbit for testing:

Sub testme()

Dim data As String
Dim fname As String
Dim c As Long

fname = "C:\911\_temp\test_data1.csv"

Open fname For Input As #1
c = 0
Do Until EOF(1)
Line Input #1, data
c = c + 1
Loop
Close #1

MsgBox c

End Sub

This works fine on files with less than or equal to 65,536 lines of data.
If I try the same code on a file with 65,537 lines or more then Excel locks
up.

Is there any way around this? Why is Excel crashing? Should I bite the
bullet and learn to use Access?

Any and all suggestions welcome. Thanks!

-gk-

================================================== ======================
"The creative act is not the province of remote oracles or rarefied
geniuses but a transparent process that is open to everyone."
-Greg Kot in Wilco Learning How To Die-


--

Dave Peterson