Solved

Merging & exporting data from 2 tables

Posted on 2004-08-05
11
200 Views
Last Modified: 2006-11-17
We have an Access 2002 SP2 customer database - several forms are used to view the contents of its tables. We would like to extract info from the tables and export into a CSV file, Excel and eventually Outlook. We want to move away from Access.

There are two important tables as follows:

TABLE1: company, contact, street, city, zip
TABLE2: company, tel type, tel number, email

TABLE1 has over 6,000 entries and the "company" field is unique. TABLE2 has over 16,000 entries, however the "company" field often contains the same company name with several different entries for "tel number" and "email" - hence over 16,000 items instead of 6,000. The field "tel type" has entries such as 'office', 'main', 'private', 'fax'. So in TABLE2 some companies have 4 "company" entries, with different "tel number" entries. Sometimes there are different "tel number" entries for the same "tel type".

That's where I am stuck. I would like to end up with a single row for each company, containing all the relevant info from both tables. This info I would then like to export. Not really sure how to combine info from the 2 tables (entries from both have a link relationship through the "company" field) - do I merge both tables into a 3rd table and then export? or do I create a report and then save as... I really have no idea!!! I've spent hours trying to come up with a solution... now over to the experts for some help!

Many thanks for your tips in advance.
0
Comment
Question by:omb
[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
  • 3
  • 2
  • 2
  • +1
11 Comments
 
LVL 8

Accepted Solution

by:
arcross earned 25 total points
ID: 11724321
you can create a query to join them..

SELECT * FROM Table1 LEFT JOIN Table2 ON Table2.Company = Table1.Company

(If Company is your primary key)

Now, the tables will be combined into a query. When you have that, have a look in access help to 'Docmd.transfertext...' to export it

Álvaro
0
 
LVL 8

Expert Comment

by:arcross
ID: 11724337
Ive had a look myself :) Memory fails sometimes....getting old

DoCmd.TransferText acExportDelim, ,  "Yourtablename", "C:\FileName.csv"
0
 
LVL 26

Assisted Solution

by:dannywareham
dannywareham earned 25 total points
ID: 11724342
As arcross says: use a select query to match where the companies are teh same and return all data, and where they don't match, supply the remaining data.
Then use either docmd.transfertext or DoCmd.OutputTo to export it to a file location or DoCmd.SendObject to export as an email attachment.

:-)
0
[Live Webinar] The Cloud Skills Gap

As Cloud technologies come of age, business leaders grapple with the impact it has on their team's skills and the gap associated with the use of a cloud platform.

Join experts from 451 Research and Concerto Cloud Services on July 27th where we will examine fact and fiction.

 
LVL 8

Expert Comment

by:arcross
ID: 11724346
Where it says 'YourTableName' replace it with the query name
0
 
LVL 16

Assisted Solution

by:PaulCaswell
PaulCaswell earned 25 total points
ID: 11724422
I'm guessing you want to export a table containing:

company, contact, street, city, zip, main tel, main e-mail, office tel, office e-mail, ...

Essentially, you must combine the two tables into one and then crosstab the resultant table with companies as the row headings and 'tel type' as the column heading.

To experiment, I setup a table of companies called 'Company' containing just 'Company'. I then setup a table of telephone numbers called 'Tel' with columns 'Company', 'Type' and 'Tel'.

Combine the tables with query:

SELECT Company.Company, Tel.Type, Tel.Tel
FROM Company LEFT JOIN Tel ON Company.Company = Tel.Company;

Then crosstab with:

TRANSFORM First([All].Tel) AS FirstOfTel
SELECT [All].Company
FROM [All]
GROUP BY [All].Company
PIVOT [All].Type;

Note: To create a crosstab query, select 'New...' button while the queries list is displaying.

This may not be the most efficient method but it seems to work.

I hope this helps.

Paul
0
 
LVL 3

Author Comment

by:omb
ID: 11730325
Thanks for all the feedback.

Just on the creating the query bit... the suggestions given by arcross & dannywareham work fine, however the end result produces several separate records for each company as each company has more than 1 record in TABLE2. However, the tables are joined.

PaulCaswell has taken this one step further. Yes, I would like to create a new table by joining the 2 original tables with fields like:

company, contact, street, city, zip, main tel, main e-mail, office tel, office e-mail, ...

I have also experimented with your suggestions. I created new tables like yours and 2 queries (1 being a crosstab query). Worked great - created a single record for each company with different field column headings for the different 'Tel.Type' and corresponding data.

However, when trying this with my 2 tables I get error "too many crosstab column headers (5613)". Could this be a problem with the amount of records in each table? FYI, TABLE1 contains 6775 & TABLE2 16870 records. Or is it something to do with too many different "Tel.Type" entries in TABLE2?

Many thanks for your support.
0
 
LVL 16

Expert Comment

by:PaulCaswell
ID: 11733533
>>Or is it something to do with too many different "Tel.Type" entries in TABLE2

Its that! You will have to reduce this if you want to use a crosstab.

Paul
0
 
LVL 3

Author Comment

by:omb
ID: 11742388
Okay, I need to go through the 16,000+ records of TABLE2 and see why there are so many inconsistent "Tel.Type" records...
0
 
LVL 26

Expert Comment

by:dannywareham
ID: 11745744
Put the table into excel and use a basic autofilter (Alt D, F, F)
You can see all the different values in the dropdown box.
You can convert them easily and append them back into your table.

(ps. I know it's dirty guys!)

:-)
0

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering 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

It’s the first day of March, the weather is starting to warm up and the excitement of the upcoming St. Patrick’s Day holiday can be felt throughout the world.
Traditionally, the method to display pictures in Access forms and reports is to first download them from URLs to a folder, record the path in a table and then let the form or report pull the pictures from that folder. But why not let Windows retr…
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 …
Visualize your data even better in Access queries. Given a date and a value, this lesson shows how to compare that value with the previous value, calculate the difference, and display a circle if the value is the same, an up triangle if it increased…

624 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