PK to FK is the correct approach here. If I understand your description correctly, what you are describing is referred to as a dwindling or diminishing value list where each time you select a value from the list, it is then dropped from the list for subsequent selections. Is this what you had in mind?
If so, such a value list is one of 10 different ways to set up a conditional value list found in:
This is a free to download working database file with detailed descriptions and documentation to show you how they work and how to set them up.
Thanks for the Download I will be studying it.
For some clarity on Valuelist and relationships do the value lists get direct relationship to each other or just remain as 3 one to many relationships to the main table as I currently have.
Example: 4 Tables
Main Table ContactAction
The ContactAction will always have a ContactProgram
The ContactAction will always have a ContactProgramType
The ContactAction may or may not have a ContactProgramCampaign
Reports would be based on the ContactAction table
If they would have to directly relate to each other I would have 4 Many to Many relationships.