Ik vraag nogmaals om uw hulp. Ik ben op zoek naar een macro om een Bom SW in onze tekeningen in te voegen. Het liefst zou ik het pad willen kunnen aangeven waar ik naar de stuklijst moet zoeken en aangeven welke stuklijst ik uit de directory moet halen.
Waarvoor? We zijn DriveWorks aan het implementeren binnen ons bedrijf en we willen zoveel mogelijk gebruik maken van wat er al gedaan is om het proces te versnellen en onze BOM's zijn daar onderdeel van. Als je iets hebt dat ik kan aanpassen aan onze behoeften, zou dat op prijs worden gesteld.
Als je zegt "Idealiter zou ik het pad willen kunnen aangeven waar ik naar de stuklijst moet zoeken en aangeven welke stuklijst ik uit de directory moet halen", is dat dan het BOM-sjabloon (.sldbomtbt-bestand) of een stuklijst die al is ingevuld?
In de onderstaande link vindt u hoe u een BoM via macro in uw plan kunt integreren: https://help.solidworks.com/2015/english/api/sldworksapi/Insert_BOM_Table_Example_VB.htm
Anders heb ik onlangs deze code geschreven om een algemene tafel op een specifieke locatie te positioneren volgens de grootte van het plan, als het je kan helpen:
Sub InsertRevisionTable()
Dim swApp als SldWorks.SldWorks Dim swModel als SldWorks.ModelDoc2 Dim swDrawing As SldWorks.DrawingDoc Dim swTable als SldWorks.TableAnnotation Dim swSheet als SldWorks.Sheet Dim vSheetNames als variant Dim vSheetProperties als variant Dim sTemplateName als tekenreeks Dim i als geheel getal Dim lErrors zo lang Dim lWaarschuwingen zo lang mogelijk Dimhoogte als single Dim breedte als single
Stel swApp = Toepassing.SldWorks in Stel swModel = swApp.ActiveDoc in Stel swDrawing in = swModel
'Controleer het formaat van het blad Stel swSheet in = swDrawing.GetCurrentSheet vSheetProperties = swSheet.GetProperties Als vSheetProperties(0) = 12 dan 'Formaat A3 hoogte = 0.015985 breedte = 0.010362 ElseIf vSheetProperties(0) = 7 dan ' A4 formaat hoogte = 0.015 breedte = 0.057 ElseIf vSheetProperties(0) = 9 dan 'Formaat A2 hoogte = 0.015985 breedte = 0.010362 Einde als ' Einde als 'Vervolgens i 'Einde als
Set swTable = swDrawing.InsertTableAnnotation2(Onwaar, hoogte, breedte, swBOMConfigurationAnchor_BottomLeft, "J:\Solidworks\Templates\Revision-Table.sldtbt", 4, 2)
Hier is een macro waarmee u moet kunnen beginnen om te doen wat u wilt doen. Hiermee kunt u een nomenclatuur of een algemene tabel invoegen, afhankelijk van de keuze van het type bestand dat is geselecteerd in het selectievenster van het sjabloonbestand.