The concept is calles "cascading comboboxes" (the actual name of what you refer to as "drop-down box" is called a ComboBox) and there are tens (if not hundreds) of examples, here on dBforums as well as on many other sites.
Basically, it consists in changing the RowSource property of the second combobox according to the value selected in the first one. This is usually done by assembling a dynamic SQL SELECT statement that comprises a WHERE clause using the value of the first combo, and use this SQL statement as the RowSource of the second combo. This is normally done in the AfterUpdate event handler of the first combobox.
"ComboA" has a list of values: "ValA1", "ValA2", "ValA3", ...etc. coming from "TableA".
"ComboB" has a list of values coming from "TableB", while "tableB" has a column "ValA" that can contains values such as "ValA1", "ValA2", "ValA3", ...etc.
To retrieve "Field1" and "Field2" from TableB for all rows that have the value "VaAl2" in their "ValA" column, I use:
SELECT TableB.Field1, TableB.Field2 FROM TableB WHERE TableB.ValA = 'ValA2';
So in the Form:
Dim strSQL As String
strSQL = "SELECT TableB.Field1, TableB.Field2 FROM TableB WHERE TableB.ValA = '" & Me.ComboA.Value & "';"
Me.ComboB.RowSource = strSQL
This actually is quite basic. Access has several "wizards" and other "assistants" that can help you (event builder, query builder...). Unfortunately, the available versions of Access do not provide any magic wand, yet.