Forum Discussion
Create an Auto Fill, Cascading Table
Hello! I am trying to create something a little more complex than I am use to, and make an auto generating Bill of materials list, based on a given part number.
I currently have a table I'm trying to generate for such, as well as a separate sheet containing 15k lines of sub assemblies. With this I'm able to use Index to fill in Column A with a set of sub assemblies made from our initial component part, giving us:
ItemNumber > SubAssemblyA
SubAssemblyB
SubAssemblyC
SubAssemblyD
I want to continue this path, re-iterating the function in Column C, and again in D, each based on the previous columns findings, so that we may see all end level items derived from our initial ItemNumber, as well as all of their sub assemblies.
My problems starts here. Since Each Sub Assembly might build into multiple sub assemblies itself. I'm not sure how to go about this from here. I can't picture how to have column C and D auto insert rows, and copy down the formula until no items are find, for each item available from the previous col.
The end result should look as followed, given that we are operating in BomTable:
ItemNumber > SubAssemblyA > SubAssyAA > FinalItemA
SubAssemblyB > SubAssyCC > FinalItemB
> SubAssyXX > FinalItemC
> FinalItemX
> FinalItemU
> SubAssyGG
SubAssemblyC
SubAssemblyD
Also to note, not all of these have final items, so some may just dead end.
Sorry for the vagueness here as well, I imagine we could start with a table with a single cell, have it run a formula or code to index all parts for Column B, based on A1, then insert a new row each time we find an item, then do the same for column C based on the results of each row of B...? Except, while populating column C, we would also need it to determine if there's no result in the corresponding B cell, then follow up to see what the last non blank was here?
Any help to make this more clear would be appreciated. Thank you!
5 Replies
- Patrick2788Silver Contributor
It's possible with an array formula but the simplest solution may be the best. Have you considered a PivotTable?
- ShadowFengCopper Contributor
I'm still largely unfamiliar with them unfortunately. While playing with them for a short while, I can see how this might display the data I want, though I can't determine how to actually structure this, or how to organize the data for it to use properly. Looking further into it, but no luck so far.
- Patrick2788Silver Contributor
A sample workbook would help tremendously (or even a small sketch of the data arrangement).