Select the last record

H

Hilton

2 questions - Text File example:

Account,Status,Val
001,NB,0
001,PI,50
001,PI,100
001,CE,100
002,PE,500
002,PI,250
002,PU,0
002,PU,0
003,PE,100
003,CE,100
I would like to pick up ALL records of any account where there is NO CE
status and write it out to a separate file i.e.
002,PE,500
002,PI,250
002,PU,0
002,PU,0

I would like to pick up the LAST record of any account where PU = 0
002,PU,0
and write it out to a separate file

It is easy to do this using a database but a need has arisen to do it
upfront i.e before importing the data into the database and I thought a
simple VBA app will suffice. I'm not looking for anything intricate - just a
simple example of how to code this.

Hil
 
J

Jamie Collins

Hilton said:
Text File example:

Account,Status,Val
001,NB,0
001,PI,50
001,PI,100
001,CE,100
002,PE,500
002,PI,250
002,PU,0
002,PU,0
003,PE,100
003,CE,100

I would like to pick up ALL records of any account where there is NO CE
status and write it out to a separate file i.e.
It is easy to do this using a database but a need has arisen to do it
upfront i.e before importing the data into the database

As you are database proficient, you will no doubt appreciate that a
sql solution is simplest. A text file can be queried as a data source
using a Jet provider/driver. Therefore, execute this Jet syntax sql
against a Jet datasource e.g. a connection to a .mdb or .xls (but not
a text file connection), in a query object in the MS Access app, etc:

SELECT Account,Status,Val
INTO [Text;Database=C:\MyFolder\;].MyNewTextFile#txt
FROM [Text;Database=C:\MyFolder\;].MyExistingTextFile#txt
002,PE,500
002,PI,250
002,PU,0
002,PU,0

I would like to pick up the LAST record of any account where PU = 0
002,PU,0
and write it out to a separate file

'Last row' has no meaning in sql. If you had a timestamp column, we
could determine which is the most *recent* row. In other words, you
need to specify a sort order before we can determine which is the
'last'.

Jamie.

--
 

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