SolidWorks二次开发 C#-读取基于Excel的BOM表信息

2023-12-17 22:37:13

SolidWorks二次开发 C#-读取基于Excel的BOM表信息

问题点来源

这是一位粉丝问的一个问题,他说到:
老师,请问Solidworks二次开发工程图中"基于Excel的材料明细表"怎么读取里面的数据?

Ps:这上面的问题,除了前两个字是多余的,后面的都没问题。哈哈

解决方案及思路

先手动调一个表格进来看看,到底是什么类型。
再去API查找对应的信息,如果实在不知道类型,可以使用选择对象的方法来测试。
最后就是拿到对象怎么去拿对应的BOM条目数据了。
有个关键的信息 就是要先Attach,不然获取不到。

在这里插入图片描述

下面的具体的代码:
 SldWorks swApp = Utility.ConnectToSolidWorks();

 ModelDoc2 swModel = (ModelDoc2)swApp.ActiveDoc;

 SelectionMgr selectionMgr = (SelectionMgr)swModel.SelectionManager;

 var selectedObject6 = selectionMgr.GetSelectedObject6(1, -1);

 //Debug.Print((selectedObject6 is TableAnnotation).ToString());
 Debug.Print((selectedObject6 is BomTable).ToString());

 if (selectedObject6 is BomTable)
 {
     var bomtable= selectedObject6 as BomTable;
     bomtable.Attach3();

     Debug.Print(bomtable.GetRowCount().ToString()); 
     Debug.Print(bomtable.GetHeaderText(1).ToString());
     Debug.Print(bomtable.GetEntryText(3,2).ToString());
     bomtable.Detach();

 }

相关引用链接

SolidWorkApi Help Online

文章来源:https://blog.csdn.net/zengqh0314/article/details/134962922
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。