Use two tables. IN one table create a record for each part with the company name and part number. Use a related table of records for the fields you have listed under "basic esimate elements". On your layout of parts, a portal to this related table can set this up so that you can see current and past prices for that part. A list view layout can also be set up based on the second table with fields from your table of parts, added to the header to show the company name and part number.