I am trying to keep roll of my class of students. My idea is that they input their student ID into a form. I have created a table with the student's name and ID. I then created a table of their attendance. I built a relationship between the tables. I have a form for their attendance and when they input their number it will populate the attendance table with their ID number and the time and date they signed in. For some reason when I open the attendance table it does not show their name, just their ID and time and date. But, when I make a query for the attendance table it will show the ID, name, date, and time. I don't know why, yet, but that is not my main concern. I have classes of sometimes 85 kids. I want to have three or four keypads so they can make lines to input their ID number at the same time. Is this possible? and if so can somebody guide me on how to set it up? thanks

It's a bit of work to get the database set up right, but it's not too bad if you've got a few years of experience with Access.

First, if you want four people entering data into the database all at once, you don't just need four keyboards, you need four computers, all connecting to a single backend file (the one that contains the data tables). This shouldn't be difficult, assuming you have some sort of network in place. The backend (tables) file is on the network in a folder where all four different users can access. Each of the four computers will have it's own copy of the frontend - the forms, reports, queries, code - in other words, everything EXCEPT the data tables. The backend tables are LINKED to the frontend file. This is commonly known as Splitting a database, and is how Access is designed to handle multiple users at once.

Second, it sounds like your table design probably includes one or more lookup fields. While these are permitted by Access, they are generally considered a bad design idea, as they introduce issues like you're encountering.

You may want to read our Wiki article on Junction Tables, which create many-to-many relationships like those between students and classes (one student takes many classes and one class has many students).

Make sure your data tables are properly Normalized before proceeding to create any queries, forms or reports. The table structure is the single most important step in database creation, as everything else is built upon it. It's like the foundation to a house. Make sure it's stable before you work on the rest of the house.

Hope this helps,

Dennis

--------------------

(;,;) Li'l Cthulu says: Please talk about what you're trying to do, as well as how you're doing it.Changing your real table name to "Table1" and your real form name to "Form1" in your posts makes it more difficult to understand what's going on, not easier.Guidelines for Posting Questions

Thank you very much. I was afraid I'd need four computers. I am a PE teacher at an elementary school and I have one laptop. I was hoping there may be a way for the students to use separate keypads to input into one database. I will review your reply to make sure I have the structure set up correctly. Thanks again.

I agree with bounce on this. If you're trying to somehow take attendance with your laptop... don't. It's probably much simpler to have a list of names for a class with boxes next to them for the students to check or initial when they arrive. Names down the side, dates across the top. Then, later on, you can do the data entry from the checklist into your database. (Doesn't the school provide you with an attendance book? My teachers all used them back in the 70's and 80's...)

Just an idea for the database: Since absentees are greatly outnumbered by attendees, it would probably be simplest to store data on who was absent, rather than who was there. For example:

So, if three students are absent from English on 9/13/17, there'd be three records in tblAbsentees. The lngClassStudentID foreign key to would refer to which student was absent for which class, and the dteClassDateAndTime would track the date and time of the class they were absent for. The tblClassStudents table can be used with this table to show the list of who WAS in class on a given date with a simple query. With this setup, you could have a continuous data entry form that selects a class, a date, and a student that was absent for each record.

Hope this helps,

Dennis

--------------------

(;,;) Li'l Cthulu says: Please talk about what you're trying to do, as well as how you're doing it.Changing your real table name to "Table1" and your real form name to "Form1" in your posts makes it more difficult to understand what's going on, not easier.Guidelines for Posting Questions