马上注册,结识高手,享用更多资源,轻松玩转三维网社区。
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 litao036 于 2016-1-12 10:23 编辑 3 U: o. t; F% Z' q3 [, z
+ x) N4 [: l( _4 X" j! \
0 r& t) N" G; Z l& OSub ReadPrp() Set swApp = CreateObject("SldWorks.Application") '启动SW ReadFilesCount = 0 HeaderRow = 2 RowNumber = HeaderRow + 1 PathName = Cells(RowNumber, 2) '读取第一个路径的值 While Not (PathName = "" Or PathName = 0 Or IsEmpty(PathName)) '直到读完路径栏 FileName = Cells(RowNumber, 3) & "." & Cells(RowNumber, 4) If UCase(Right(FileName, 3)) = "PRT" Then swFileTYpe = 1 If UCase(Right(FileName, 3)) = "ASM" Then swFileTYpe = 2 ' If UCase(Right(Filename, 3)) = "DRW" Then swFileTYpe = 3 Set swDoc = Nothing If Dir(PathName & FileName) <> "" Then Set swDoc = swApp.OpenDoc(PathName & FileName, swFileTYpe) '开启档案 End If If Not swDoc Is Nothing Then ColumnNumber = 6 PropName = Cells(HeaderRow, ColumnNumber) While Not (PropName = "" Or PropName = 0 Or IsEmpty(PropName)) '直到读完表头 PropValue = swDoc.CustomInfo2("", PropName) '获取属性 Sheet1.Cells(RowNumber, ColumnNumber) = PropValue ColumnNumber = ColumnNumber + 1 '下一栏 PropName = Cells(HeaderRow, ColumnNumber) ' If swFileTYpe = 2 And ColumnNumber = 10 Then ColumnNumber = 13 '组件跳过读取零件的材料属性 Wend '回到>直到读完表头
( \6 {5 f) C0 `这个 读取自定义 属性的 如何改成读取 配置属性的????? 4 g$ N5 ~# V9 v3 O& e
% |6 O; E# @- n& ~2 _% v
Sub WritePrp() Set swApp = CreateObject("SldWorks.Application") '启动SW SavedFilesCount = 0 HeaderRow = 2 RowNumber = 3 RowNumber = HeaderRow + 1 PathName = Cells(RowNumber, 2) '读取第一个路径的值 While Not (PathName = "" Or PathName = 0 Or IsEmpty(PathName)) '直到读完路径栏 FileName = Cells(RowNumber, 3) & "." & Cells(RowNumber, 4) If UCase(Right(FileName, 3)) = "PRT" Then swFileTYpe = 1 If UCase(Right(FileName, 3)) = "ASM" Then swFileTYpe = 2 If UCase(Right(FileName, 3)) = "DRW" Then swFileTYpe = 3 Set swDoc = Nothing If Dir(PathName & FileName) <> "" Then Set swDoc = swApp.OpenDoc(PathName & FileName, swFileTYpe) '打开文件 End If If Not swDoc Is Nothing Then ColumnNumber = 6 PropName = Cells(HeaderRow, ColumnNumber) If PropName = "材料" And swFileTYpe = 2 Then GoTo 200 If PropName = "材料厚度" And swFileTYpe = 2 Then GoTo 200 While Not (PropName = "" Or PropName = 0 Or IsEmpty(PropName)) '直到读完表头 ' ConfigName = Cells(RowNumber, 3) PropValue = Cells(RowNumber, ColumnNumber) If Len(PropValue) > 0 Then swDoc.DeleteCustomInfo2 ConfigName, PropName '删除属性 swDoc.AddCustomInfo3 ConfigName, PropName, 30, PropValue '新增属性 End If ' If ColumnNumber = 9 And swFileTYpe = 2 Then ' ColumnNumber = ColumnNumber + 3 ' End If ColumnNumber = ColumnNumber + 1 '下一栏 PropName = Cells(HeaderRow, ColumnNumber) 200 Wend '回到>直到读完表头 Dim lErrors As Long Dim lWarnings As Long SaveOk = swDoc.Save3(1, lErrors, lWarnings) swApp.CloseDoc PathName & FileName '关闭工程图 If SaveOk Then Cells(RowNumber, 2).Interior.Color = RGB(255, 255, 127) SavedFilesCount = SavedFilesCount + 1 End If End If 这个 输入自定义 属性的 如何改成输入到 配置属性的????? 哪位高手 指导一下
) G3 g+ ~, B6 G
1 W# Y3 R! X; c5 F$ ^' Z( E
+ W3 B8 `/ J+ h* s |