Problem Description: Design and write a VBA program that can be used by a small theater to
sell tickets for performances. The theater’s auditorium has 20 rows of seats, with 30 seats in each
row. Design a spreadsheet that shows which seats are available and which are taken (select a
legend to do this, for example, you can use colors, or characters, “ x “ for taken seats, be
The program solution should consider the following:
• Command Button 1 to specify the performance name, seats prices for each row
in the auditorium considering 3 sections of seats, specify the sale tax, etc… The
seats charges are distribute as follows: Section 1 – rows 1 to 10 (expensive price),
Section 2 – rows 11 to 15, is supposed to be less than section 1, and Section 3
rows 16 to 20 supposed to be less than section 2 . Do an input validation – do not
accept negative values for seats prices.
• Command button 2 to execute the program
The program asks to the user to enter the row and seat number for tickets
being sold or the program automatically assigned the seat upon availability
when the user selects the desire section for the event. If the row and seat
selected by user is not available, the program can ask to the user to make
another selection or assigned automatically the seat taking into
consideration availability in the section selected by user. The program
asks to the user quantity of seats are interested to buy in each transaction.
Input Validation: When someone, requests a particular seat, the program
should make sure that seat is available before it is sold.
The program display a receipt to the user for the purchase tickets (see
Every time a ticket or group of tickets is purchased, the program updates
the number of seats available in each section and the number of seats
taken, and displays it on the spreadsheet (see Figure1).
The program should keep a total of all tickets sales. The user should be
given an option of viewing this amount (see Figure 3).
The program should also give the user an option to see a list of how many
seats have been sold, how many seats are available in each row, and how
many seats are available in the entire auditorium (see Figure 1).
• Command Button 3 to clear an event (eliminate prices, all seats are available
again! for a future performance).
• You can design a GUI in combination with a spreadsheet to displays seats in the
auditorium or just working in the spreadsheets. Use your imagination!!!! Be
IMPORTANT: It is a requirement to use Selection/Repetitions Structures and Function as
part of your project solution.
An example of a Theater Auditorium Design:
Figure 1: “Sheet 1 – Theater Auditorium”
Figure 2 : “Sheet 2 – Receipt”
Figure 3: “ Sheet 3 – Purchase Tickets History for an specific Event ”