Wedding seating Chart

Posted on 2006-06-04
Last Modified: 2011-10-28
On my niece’s wedding we will have more than 1000 guests and making their seating chart has become a huge task. I am planning to send out a bar code (Guest ID) along with the invitation card.

We want to crate a page where the guest will scan the card and it will show his seat number along with his family members seat number (family member may not necessarily will seat in the same table).

Here is how I have design my table:

Last Name        First Name         Guest ID     FamilyID          Table#
------------        ------------        -----------     ------------          ---------
Sandler             Adam                    001                1                     9
Brown               James                   002                2                     8
Nina                  Madia                   003                1                     9
Fox                   Albert                    004                2                     7

Now, if I scan the Guest ID it will give me a result containing the Table number of all the member who has the same FamilyID.

So, let’s say I scan a Guest ID 002, it will return me Brown James and Fox Albert because they have the same family ID = 2.

Here is my plan:

Create a Text box and after update property of the text box set the forms Data Source to query. … Am I right?

Please give me your idea and also tell me how to write the query above example (returns all the names who has the same family id after scanning the Guest ID).
Question by:nibirkhan
    LVL 58

    Expert Comment

    Hello nibirkhan

    The query could be:

        SELECT * FROM tblGuests
        WHERE FamilyID = (
            Select FamilyID From tblGuests Where GuestID = [txtGuestID]

    [txtGuestID] being the textbox.

    Another solution would involve a combo box for the original GuestID, with a hidden column providing the corresponding FamilyID. That way, you could show directly that number in anther text box, and simply use Link Fields to display all family members in a subform.

    Does that  make sense?

    LVL 6

    Accepted Solution

    1000 guests!!!!! Thank God you're not her Father!!!! :) I just got married and my wedding was just shy of 150 people!

    Using Barcodes might be a bad idea as I would never remember to bring my invitation to a wedding, I would suggest having a lookup form where a person can lookup by last name and first name and then it will pop up a form showing the person where they are sitting.  It would also be interesting to greate a simple graphical form that shows where the person is sitting.  at the top have something like

    Hello Adam Sandler, you are sitting at Table 6 Seat 3

    and then have a diagram showing where they are sitting, that could be created in the code.  might be a bit complex for what you want, but would be a nice touch as it's a wedding and they are probably spending quite a bit of money considering there are 1000 people coming
    LVL 38

    Expert Comment

    Why reinvent the wheel when you can download a free seating planner??

    see these links:
    ____________________________________________________________________     (Free download)<<<<<<
    ____________________________________________________________________            (uses ms access)

    LVL 9

    Expert Comment

    Forget the programming question, this is a social engineering problem.  Have you considered how difficult it will be for 1000 guests to find their assigned seats even if everybody knows what their table number is?  All the people milling around in a sea of tables is recipe for confusion.
    LVL 6

    Expert Comment

    Try telling the bride that she can't have what she wants on her wedding day.....not going to happen :)
    LVL 2

    Author Comment


    hello every one,

     thanks for your post ... your comments really helping me out....

    you have answered my query problem. I still want to do the barcode thing otherwise it will be more difficult to give them their seat number.

    If any one has a nice design interface idea please post me.

    LVL 6

    Expert Comment

    I would suggest not only having a barcode scanning form, but also have a name lookup form so that if they forget their card they can still find their seat number, and you have the ability of finding someone if you want to....the bride wants to say hello to uncle johnny, but cant find them in 1000 people, so you go look up where his seat is and she can start looking there.  As far as interfacing with a barcode scanner, (I've never actually implemented a solution like this) a barcode scanner inputs data just like a keyboard, so I would have a textbox that always has focus at the top of the screen and have an on change event fire for the textbox, check the length of the string in the textbox (you'll have to standardize your barcodes to be something like 0001 so that it's the same length as the barcode for guest 1000.  in the on change do your code to find the person's seat I would literally draw out circles or squares in black that shows the layout of the reception hall.  Then I would draw out one circle or square that is red and the line weight is heavier than the other black circles or squares.  For each of the black circles or squares develop a naming convention like table1 and name them that.  Do the same thing for the chairs around the tables, and name them chair1, that way in the on change of the textbox you can do:

    if len(me.txtBarcode) = 4 then
      dim table as string
      dim seat as string
      dim barcode as string
      barcode = me.txtbarcode.text
      'you need the .text because it's not a comitted value yet, unless you did some code like me.txt1.setfocus,
      'then this could all fire on the after update event
      table = dlookup("[Table]","[tblSeatingChart]","[GuestID] = '" & barcode & "'"
      seat = dlookup("[Seat]","[tblSeatingChart]","[GuestID] = '" & barcode   & "'"

      'This code sets the red table on top of the guest's table to "highlight" the table they will sit at
      me.redTable.left = me!("Table" & table).left
      me.redTable.height = me!("Table" & table).height
      me.redTable.width = me!("Table" & table).width

      'This code sets the red seat on top of the guest's seat to "highlight the seat they will sit at
      me.redSeat.left = me!("Seat" & seat).left
      me.redSeat.height = me!("Seat" & seat).height
      me.redSeat.width = me!("Seat" & seat).width
    end if
    LVL 2

    Author Comment

    Hi yhwhlivesinme,

    Nice idea... mine is a little simpler than yours I mean, I am not assigning any seat number, just assigning the table number. I'll have 10 guests in each table.

    Could you pleaes tell me more how to do the table layout and print..?

    LVL 6

    Expert Comment


    I threw something together for you, try it out, the frmSignIn is the one you're looking for, it basically checks the barcode scan box to see if the value is 4 characters if it is it updates the recordset and highlights the correct table. After requerying the entire contents in the textbox are highlighted so you just need to type in another barcode ID, so no keystrokes will need to be automated.  When you hook up a barcode scanner to the computer you're using it should just send the keystrokes to this textbox...let me know how it works :)
    LVL 6

    Expert Comment

    what did you think of my database? how did it help you? are you going to use it? it would be helpful for other people who view this question for you to state what you ended up doing

    Expert Comment

    I know this thread is old, but I tried all of the links for this solution and I think yhwhlivesinme's database is elegantly simple and useful.  Personally, I would suggest trying it over any other seating chart database that I've seen, as it is very easy to jump right into and start modifying for your own purposes.

    Better late than never I guess, so thanks yhwhlivesinme:!!!
    LVL 6

    Expert Comment

    Wow! This is an oldie, I had to reread the whole comment thread to remember it!  Glad my solution was helpful!

    Featured Post

    Top 6 Sources for Identifying Threat Actor TTPs

    Understanding your enemy is essential. These six sources will help you identify the most popular threat actor tactics, techniques, and procedures (TTPs).

    Join & Write a Comment

    When you are entering numbers in a speadsheet, and don't remember what 6×7 is, you just type “=6*7" instead. It works in every cell! This is not so in Access. To enter the elusive 42 in a text box, you have to find a calculator, and then copy the re…
    Overview: This article:       (a) explains one principle method to cross-reference invoice items in Quickbooks®       (b) explores the reasons one might need to cross-reference invoice items       (c) provides a sample process for creating a M…
    Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…
    In Microsoft Access, when working with VBA, learn some techniques for writing readable and easily maintained code.

    734 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

    Need Help in Real-Time?

    Connect with top rated Experts

    17 Experts available now in Live!

    Get 1:1 Help Now