AnsweredAssumed Answered

Is there a way to have an Excel exported BOM update when a drawing is saved?

Question asked by Gabriel Didier on Sep 16, 2019
Latest reply on Sep 19, 2019 by Gabriel Didier

To preface this, I have read too many forums to know if I have just missed something or if its just not possible, so if the solution is already out there, I apologize for wasting time! 


I have the glorious task of migrating SW data over to AutoCAD for a DoD contract(They require the data be delivered in ACAD). I know that when I open the part or assembly in ACAD I will get the 3D model and some color information, and the parts' original name in the drawings "Misc" dialog box; but that is about it. I need to grab the BOM and drop it into ACAD; which I have figured out how to do via the: right click the table and "SaveAs" and select the (*.xlsx) file option. Because ACAD and SW don't play nice with native BOM's, I'm using Excel as the middle man. I'm able to do whats called a "data link table" in ACAD, where, when the Excel file(BOM from SW) is updated; the linked table reflects the update after re-loading. I then have my required information in the .dwg format, that is mandatory as per the contract.


I have to do this for 2500+ parts/assemblies; and I will have to manually update anything that changes. For instance: a manufacturer changes the % mixtures in an alloy and has to change the part number or any other number of things that are associated; or my team re-engineers a part to be made of a new material. I then have to update that reference/material in any applicable part/assm which isn't too big of a deal. Says the optimist standing at the foot of a mountain of inevitable "revisions"...


I am trying to have the BOM Excel file from Solidworks update when I save the part/assm, automatically. I am not too keen on the macro's yet, as I am relatively new to Solidworks; so writing one is, well, intimidating... Is there already one out there; or is this a simple answer of, "you will be updating everything manually, you poor fool"? 


I appreciate your time!