Transposing rows to columns headings in MS Access

Hi,

I am designing a database to deal with subject options for pupils ..each pupil can take 5 subjects labelled A-E. When I thought about design I was going to create Pupils / Subjects and Pupils takes subjects table and each pupil would have many rows in the pupils take subjects table with subject name and column number.

However I want to display this with one pupil per row and the subject lables A-E across top with each subject filled in.. also I need to produce a timetable and each subject gets slotted into a period in a day.

I have changed the design to have subjects A-E but every bone in my body is telling me this is BAD design.

Before I spend many more hours on this can anyone tell me if the design attached will work or if I can use my originals thoughts and still produce the two forms that I have produced in the attachment.  Thought it best to ask ...cos experts exchange say just ask :-)

Any pointers /help appreciated.

Thanks.
S5S6-Options.mdb
tmckeatingAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

tmckeatingAuthor Commented:
I am not sure I kno what that answer means.
0
Richard DanekeTrainerCommented:
It means, your question was recategorized for a wider audience.

You are designing to a report, not designing a table and then generating a report.

Data should be normalized.   Look  it up in Wikipedia - third normal form.

You are on the right path with students, classes, and students assigned to classes.  

I would have multiple records for the students selected classes to avoid repeating fields (see data normalization).  

Will each of the classes meet every day of the week or do they have varying schedules?  Would you like to include classroom, teacher assigned, etc. for additional fields?

I would use a crosstab query to pull the scheduled classes together.

I don't have time to tweak your database now, but may be able to later.
0
tmckeatingAuthor Commented:
I have chnaged design to normalisation rules... but with this I cannot seem to get the kind of forms i need to chnage subject data and timetable as required. Any help appreciated.
S5S6-Options---Normalised.mdb
0
Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

Luke ChungPresidentCommented:
0
tmckeatingAuthor Commented:
I have normalised my pupil subjects table but cannot see how I can display it in a form with pupils down the left and subjects A-E as column headings. I created a crosstab query but then cannot edit the data in this format. I do not have VB experience...can you do this without VB?
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
tmckeatingAuthor Commented:
none of the others fitted and I did not have the expertise to design visual basic
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Microsoft Access

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.