Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

Export Access table to csv file

Posted on 2009-07-08
21
Medium Priority
?
1,582 Views
Last Modified: 2013-11-27
I am exporting an Access table to a csv file.
The problem I am having is that one of the fields which is defined as text has numbers in like
009900
it is exporting like 9900
I need it to be 00900

this is what I am using to exp0rt

 DoCmd.TransferText acExportDelim, "spec", "ExportTable", stOutputName & ".csv", False
0
Comment
Question by:Pdeters
  • 12
  • 7
  • 2
21 Comments
 
LVL 120

Expert Comment

by:Rey Obrero (Capricorn1)
ID: 24803908
create a query against ExportTable (select all fields) and specify that field as text with  cstr([nameoffield])  save the query and use it for export instead of the table.
0
 

Author Comment

by:Pdeters
ID: 24804323
not all fields have a value - having a problem with the null fields exporting
0
 

Author Comment

by:Pdeters
ID: 24804326
I receive an error
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 120

Expert Comment

by:Rey Obrero (Capricorn1)
ID: 24804365
use the nz() function

nz([fldName],"")  '< for text data
nz([fldname],0)   ' < for number

to use the cstr()

        cstr(nz([fldName],""))
0
 

Author Comment

by:Pdeters
ID: 24804604
Still not getting the leading 00 on the text fields - it is dropping them
0
 
LVL 120

Expert Comment

by:Rey Obrero (Capricorn1)
ID: 24804618
can you upload your db?
0
 

Author Comment

by:Pdeters
ID: 24804654
I will need to take some stuff out
0
 
LVL 120

Expert Comment

by:Rey Obrero (Capricorn1)
ID: 24804734
before you do, have you tried exporting using fixed width?
0
 

Author Comment

by:Pdeters
ID: 24804945
I am using the button on the form
0
 

Author Comment

by:Pdeters
ID: 24804952
Using Button on Main Form
db1.mdb
0
 

Author Comment

by:Pdeters
ID: 24805358
yes I am exporting with fixed width in the specs
0
 

Author Comment

by:Pdeters
ID: 24805366
I need export in fixed widths
0
 
LVL 120

Accepted Solution

by:
Rey Obrero (Capricorn1) earned 1200 total points
ID: 24805466
use this line then

       DoCmd.TransferText acExportFixed, "NewExport", "QryExport", stOutputName & ".csv", False


now, open your table in design view and fixed the Field size property accordingly.
create a new Export Spec and use the new spec in your export.
0
 

Author Comment

by:Pdeters
ID: 24805716
I need to have it be able to open up in Excel in separate columns - it has to have the extention .csv
0
 

Author Comment

by:Pdeters
ID: 24805979
when I do the acExportFixed it goes into one field/column in Excel
0
 

Author Comment

by:Pdeters
ID: 24806062
Is this possible?
0
 
LVL 120

Expert Comment

by:Rey Obrero (Capricorn1)
ID: 24806249
must it be a .csv file?
0
 
LVL 74

Expert Comment

by:Jeffrey Coachman
ID: 24806676
Pdeters,

First things first.
The Output file: c:\ExportFile.csv *DOES* have the leading zeros.

If you open the file with *NotePad*, you will clearly see the leading zeros.

If you open the CSV file with *Excel*, Excel will convert these values to numbers.

So the ultimate question is what application will these CSV files end up going to?
If Excel, then why not export to the Excel format?

If they are going to some other program, you have to test the file in this application to see if they will be *USED* in this program correctly as Text (with the Leading zeros)

You cannot tell anything form "Opening/viewing" the file, because any program to view the file may have it's own filters. (like Excel)

You have to actually test the file in its target application and veiw the output to be sure.

JeffCoachman
untitled.JPG
0
 

Author Comment

by:Pdeters
ID: 24831029
Yes - If I open with note pad the leading 0 are there but I gues I am not being clear.
the leading 0 need to be there in Excel but the file extension needs to be csv.
0
 
LVL 120

Expert Comment

by:Rey Obrero (Capricorn1)
ID: 24831243
a work around

use this in the query

select IIf(Left([FieldI],1)="0",Chr(39) & [FieldI],[FieldI])
from tableX
0
 
LVL 74

Assisted Solution

by:Jeffrey Coachman
Jeffrey Coachman earned 800 total points
ID: 24831975
Pdeters,

Thanks, it always helps to clarify things.

Also, always state what version of Office you are using as there are Major differences between 2007 and previous versions.

If you are using Office 2003 you can simply Export the Table in the Excel format, then simply change the extension to ".csv" afterwards.
When you open the file with Excel 2003 you will see the Leading Zeros.

This works absolutely beautifully for me in Office 2003:

Private Sub Command68_Click()

Dim stOutputName As String
       
    stOutputName = "c:\ExportFile"
   
    DoCmd.TransferSpreadsheet acExport, , "Table1", stOutputName & ".xls"
    'Change the extension
    Name stOutputName & ".xls" As stOutputName & ".csv"

    MsgBox "Exported", vbOKOnly, "File Exported"

End Sub


JeffCoachman
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Access custom database properties are useful for storing miscellaneous bits of information in a format that persists through database closing and reopening.  This article shows how to create and use them.
Microsoft Access is a place to store data within tables and represent this stored data using multiple database objects such as in form of macros, forms, reports, etc. After a MS Access database is created there is need to improve the performance and…
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …
Do you want to know how to make a graph with Microsoft Access? First, create a query with the data for the chart. Then make a blank form and add a chart control. This video also shows how to change what data is displayed on the graph as well as form…
Suggested Courses

885 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question