New at Access question on databases and filters?

J

Jennifer

I need to create a database that will have several names in it. Next, I
guess I would create a form that would have a place for the persons name,
then I need to have three fields that are requirements or goals that these
people need to meet. As each goal is met i will put a check mark in the
fields, then when all three goals are complete I somehow want the form to
create a new list with those names and if at all possible print out name tags
with the persons name on it.
(also was wondering if I had all this information in excel could i import it
into access?)

Example:
Current Test Ran 5 miles 20 pushups
John Doe x x x
Mary Smith x x
Pam Brown x x x

So after I enter all the information I want the program to create a list of
the completed names. (see below)
John Doe
Pam Brown
Then I have a program that works with Word, its Avery label maker, I am not
sure if it is compatible with access or if Access has its own way of doing
this..but,
I would like to import those names into there and create name tags. Is there
anyway to do this?
Thank you so much...
 
K

ken

Firstly, Access will create label reports compatible with Avery label
sizes, so you can do it all in Access. Firstly create a query which
restricts the results to those rows where all three Boolean (Yes/No)
columns are True. To do this in the query designer just enter True in
the first 'criteria' row for each of the three columns and uncheck the
'show' checkbox for each.

Then use the report wizard to create your label report, basing it on
the query.

Its very easy to import Excel data into an Access table using File |
Get External Data | Import on the File menu of the main database menu
bar (or the equivalent if using Access 2007). Whether it would import
the three columns as Boolean data type depends on how the values are
represented in Excel, so you might have to amend the table design
after its imported.

Having said that I should point out that having three separate columns
for each requirement is not a very good design for a table in a
relational database. This sort of data should really be stored in
three separate tables People, Requirements and RequirementTypes say.
The People table would therefore have columns PersonID, FirstName and
LastName; the Requirements table would have columns PersonID,
RequirementType (i.e. with values "Current Test ", "Ran 5 miles" or
"20 pushups"; and the RequirementTypes table would have just the one
column RequirementType, with three rows containing the values "Current
Test ", "Ran 5 miles" and "20 pushups" respectively. The primary key
of the Requirements table would be a composite one made up of PersonID
and RequirementType. This prevents two rows for the same person/
requirement being inserted into the table.

The query to return everybody with all three requirements would then
join the People and RequirementTypes tables, be grouped on PersonID,
FirstName and LastName and would Count the rows returned per person,
with a criterion of =3 on the count column, i.e. it’s the presence of
a row in Requirements which indicates that a person has satisfied that
requirement. In SQL view it would be:

SELECT People.PersonID, FirstName, LastName,
FROM People INNER JOIN Requirements
ON People.PersonID = Requirements.PersonID
GROUP BY People.PersonID, FirstName, LastName
HAVING COUNT(*) = 3;

Ken Sheridan
Stafford, England
 
J

Jennifer

Ken,
Thanks for the answer, like I said I am now at using access, so bear with
me. I created a database and imported the excel file that just contained the
names. Then I tried to create three seperate columns and this is where I
think I am lost. Somehow I ended up with 6 columns and from that point on I
was totally lost. If its not too much trouble can you outline the steps on
what I should be doing or if you know of a tutorial or something because like
I said.. totally lost here.
Thank you again for helping me.
Jennifer
 

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