我提交了一个我已经发布的帖子https://forums.autodesk.com/t5/visual-basic-customization/setblocktablerecordid-issue/td-p/9157637到目前为止,没有任何解决方案;m从Excel for Office 365 32位VBA应用程序7.1版中进行编码,并在W10笔记本电脑中使用;m引用AutoCAD 2018类型库并尝试使用SetBlockTableRecordId;使用以下代码线将块插入表格单元格的方法:
- myTable.SetBlockTableRecordId j + 1, 0, myDoc.Blocks("blockName").ObjectID, True
然而,我';我得到一个编译错误,用“quot;编译器错误:不对应类型;作为(hoepfully)最接近的翻译,同一个语句不';如果我在AutoCAD 2018 VBA 7.1环境中编码,我会出错,我知道(或者至少我认为)这与32/64位有关,并且盲目地尝试了这两种方法 - myTable.SetBlockTableRecordId j + 1, 0, myDoc.Blocks("blockName").ObjectID32 , True
- myTable.SetBlockTableRecordId j + 1, 0, CLngPtr(myDoc.Blocks("blockName").ObjectID)
但没有任何效果,可能有人感兴趣的是:
-;CLngPtr“;,编译错误将突出显示“QUOTE;”;。ObjectID“;声明的一部分-带有;CLngPtr“ ;编译错误将突出显示“QUOTE;”;。CLngPtr“;第I和039部分;我认为我的Excel 32位永远不会处理对需要一些64位参数的方法(SetBlockTableRecordId)的调用
有人知道解决方案吗
谢谢你
|