Numbers: Auto-populate seat list from checkboxes?

I frequently rent a theater for large group viewings. However, the theater does not have a way for participants to choose seats like you normally do on an app or website. So I recreated the theater layout, using Numbers. For each seat, I have 3 tables, laying one on top of the other, with the top layer being checkboxes. I then add some functions that makes the seat turn dark when you click on a checkbox, indicating it is taken.


What I am now wondering is how to create a list below that will automatically populate the seat row and number in Column B—and if possible—in the order seats are selected. Then a person can type their name in Column A, next to the seat designation. (I am not concerned with people changing names and seat designations).


As for seat designations, the top row in the screenshot would be Row A, and the seat numbers would go from right to left, 1-9, etc. There are 63 seats total.


One other detail, currently, the seat layout is made up (4) tables: FRONT, HANDICAP, MIDDLE, and BACK. I could create the seats to all be in one table if it is necessary. Thanks in advance for any help!



[Edited by Moderator]

Posted on Aug 3, 2026 9:42 AM

Reply
4 replies

Aug 3, 2026 10:43 AM in response to Zombocom1023

An interesting exercise, to say the least... a couple of gaps/questions, though...


You say:


> "... For each seat, I have 3 tables, laying one on top of the other..."


Do you mean, literally, 3 tables per seat? So for 63 seats you have 189 tables?

My initial expectation was that you have three tables of 63 cells/seats.


It may not be critical, but it's kind of important in terms of working out how to achieve what you're asking for.


> What I am now wondering is how to create a list below that will automatically populate the seat row and number in Column B—and if possible—in the order seats are selected


It's not too hard to get a list of checked cells, but knowing whether that's 63 tables to scan, or just 1 table makes a huge difference.


The 'order seats are selected' is going to be a lot harder - maybe impossible, since that isn't recorded anywhere in the document (a checkbox is either TRUE() or FALSE(), and its order is not recorded relative to any other cells.


That might also be the kicker for the rest of your request..


Let's say you have 10 seats selected, specifically seat 4 in each row... you have A4, B4, C4, D4, ... H4.


It's easy enough to build that list.

People can then add their names to their preferred row... all good.


Now an 11th person comes along and checks seat D3


Now your seat list will contain 11 seats... since there is no way (at least I can think of off-hand) to append D3 to the end of the list, D3 is most likely to get inserted as the fourth seat - A4, B4, C4, D3, D4,... H4


Which means whoever was in D4 (the fourth name) has now been moved to D3 (the fourth seat), and everyone else has been moved forward one row. Somehow I doubt that's what you want.


If you can clarify the above points, especially in regards to the number of tables, I'm happy to take a run at this, but my first thought is that this isn't a good use case for a spreadsheet.

Aug 3, 2026 1:05 PM in response to Zombocom1023

> So if I understood your question correctly, it would be "4 checkbox tables" to scan that add up to 63 seats.


Ha! So a hybrid model between my two options! lol!

4 is a lot easier than 63 distinct tables, so that's a start :)

It might be easier to structure using 8 tables, one table per row of seats, but I'm not sure it makes much difference at this point... your last screenshot shows that you've already done the heavy lifting of building the table of TRUE/FALSE values in column C alongside the seat numbers in column D... so all that's left is to get a list of which seats are checked...


(At least, I assume you have that first part done - let me know if you need help automating this part.)


Assuming columns C and D have the correct data, you can get a list of all the checked seats via this formula in cell B2:


=FILTER(D,C=TRUE(),"")


This will return a list of seats from column D where the corresponding value in column C is TRUE()


Like I said before, though, this won't take account of the order in which the seats were selected - selecting a new seat will recalculate this list, regardless of the names that were previously attached, potentially reassigning seats. That's a whole other level of pain.

Aug 4, 2026 11:59 AM in response to Zombocom1023

Thanks for your time and help! My apologies for not being clear.


To answer your first question - (see first screenshot; I separated out the three tables). I have three tables, one directly on top of the other. The bottom table (TABLE 1) is the "available" seat graphic in each cell; no functions or conditional highlighting (CH).


Then, directly on top is TABLE 2 displaying the darker seats (only if the corresponding cell is checked on TABLE 3). A1 of TABLE 2 has the function, "IF('TABLE 3'::A1=TRUE,"N","Y"). The text (N or Y) is turned to 0% opacity. I also have two conditional highlighting rules in each cell that correspond to "N" and "Y," which makes the dark seat either 100% opaque (if "Y"), or 0% opacity (if "N").


Then TABLE 3 is directly on top of TABLES 2 and 1, and is just the checkboxes. No other function or CH.


My thinking is - the function written in the table below with the names and seat row/numbers would only need to correspond to the checkmark tables (TABLE 3).


Now, I have four sets of tables set up this way. The top two rows of seats, the handicap row, the four middle rows, and the bottom row. If I have to make all seats on one set of three tables (layered as described above), I can do that. The only reason I broke it up into 4 sets, is because all of the seats in the theater do not line up in a perfect grid.


So if I understood your question correctly, it would be "4 checkbox tables" to scan that add up to 63 seats.


Second question: I was initially think to have a hidden table, that designates each seat name based on its row and column in each of the four TABLE 3's. (see screenshot) So, Table 3::I1 is seat "A1", Table 3::C2 is seat "B7". Of course, I would rename the other three Table 3's to a slightly different name TABLE 3A, 3B, 3C, 3D or something like that. Then as the checkboxes are checked, the seat row/number would pop up (see third screen shot; I simulated what I hope for it to look like).


Hope this helps clarify.





[Edited by Moderator]

Aug 4, 2026 11:58 AM in response to Camelot

Thanks again. I did what you said, and as you said - the order remained in alphabetical order - which means seats got mixed up as soon as a seat in a row earlier in the alphabet was selected. So I went back to the drawing board, and realized a much better solution. I switched it from a "checkbox" seat selection to a dropdown menu (in the table with the name). I then tied the drop down menu selection to the corresponding seat. It works much better, allows me to lock all of the tables except for the dropdown menu table, and looks much cleaner. I also added a seat counter. Works great!



[Edited by Moderator]

Numbers: Auto-populate seat list from checkboxes?

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple Account.