Solved

How to Automate CSV file manipulation?

Posted on 2014-02-24
11
540 Views
Last Modified: 2014-03-04
I have a customer who uploads files to their system using CSV files which they are send from certain suppliers. The system rejects them if they are in the wrong format and they now have a new supplier sending their own style of CSV output. What I need to find out is how I can automatically parse the CSV file and copy the correct columns from their CSV into   the right columns on the new CSV. The new CSV file they recieve has all the data needed but just in the wrong places.

I think a macro of some sort would do this in Excel but I know very little about them?

Any ideas.. this must be a fairly simple thing to do (I Hope)

Thanks in advance
0
Comment
Question by:plug1
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
  • 2
  • +1
11 Comments
 
LVL 30

Assisted Solution

by:Mike Lazarus
Mike Lazarus earned 250 total points
ID: 39885003
0
 
LVL 30

Expert Comment

by:Mike Lazarus
ID: 39885052
Depending on the specific changes you need, there might be better options using VBScript or Powershell ...

You'll need to be careful if data includes fields for: currency, dates, phone numbers
0
 
LVL 14

Author Comment

by:plug1
ID: 39885057
Its really just moving columns around and deleting ones which arent used? The tutorial you posted seems to be what I need.. just need to try it now.
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 30

Expert Comment

by:Mike Lazarus
ID: 39885136
0
 
LVL 45

Expert Comment

by:aikimark
ID: 39885885
@plug1

The usual approach to this is to 'map' the CSV columns into their destination columns/fields.

If this is going to happen for more than one source, then create a source (database, flat file, workbook, etc.) that you can easily edit and that a VBA routine can easily read.  You can do this specification with column names, if present, or with column numbers.  This way, you won't have to change your code.

Another useful tool is Powershell.  Do you know anything about Powershell?
0
 
LVL 65

Accepted Solution

by:
RobSampson earned 250 total points
ID: 39893569
If you show us a sample before and after copy of the CSV, we could help you rearrange it with a script.

Rob.
0
 
LVL 14

Author Comment

by:plug1
ID: 39894024
Rob, that's the best thing Ive ever heard :) ... I'll be back later!
0
 
LVL 65

Expert Comment

by:RobSampson
ID: 39894035
Lol.... I don't know about "ever", but samples would certainly help us help you.
0
 
LVL 14

Author Comment

by:plug1
ID: 39905632
This has been resolved by the company supplying the original CSV in the correct format so unfortunately I cant try the first answer properly or take you up on your offer Rob, I'll split the points with you 2 though. Thanks alot.
0
 
LVL 14

Author Closing Comment

by:plug1
ID: 39905635
Cheers people.
0

Featured Post

Free Tool: Postgres Monitoring System

A PHP and Perl based system to collect and display usage statistics from PostgreSQL databases.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
Access Database 5 42
Lookup - Vlookup 9 43
Delete row if does not start with 0 43 37
Java pass by reference 3 11
In this post we will learn different types of Android Layout and some basics of an Android App.
When you see single cell contains number and text, and you have to get any date out of it seems like cracking our heads.
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…

740 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