SolidWorks机械工程师网——最大的SolidWorks学习平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

好品数字
好品数字
查看: 1259|回复: 1
打印 上一主题 下一主题

AddCustomInfo3 的应用

[复制链接]

18

主题

67

帖子

116

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
268
QQ
跳转到指定楼层
楼主
发表于 2015-6-15 15:16:17 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
按个人要求定制自己的solidworks属性。

  • ''
  • Private Sub AddCustMatWt()
  • Dim PrtCustArray, AsmCustArray, ii, jj, Str
  • PrtCustArray = Array("图号", "名称", "材料", "质量", "下料尺寸", "下料质量", "下料公式", "图纸张数")
  • AsmCustArray = Array("图号", "名称", "材料", "质量", "图纸张数")
  • ''

  • Dim Xls As Excel.Application, Rng As Range, FileName
  • Set Xls = GetObject(, "Excel.Application")
  • Set Rng = Xls.Selection
  • Dim Sht As Worksheet, Arr
  • Set Sht = Rng.Parent
  • ''
  • Dim R1 As Range, R2 As Range, R3 As Range
  • Set R1 = Rng.Areas(1)
  • Set R2 = Rng.Areas(2)
  • Set R3 = Rng.Areas(3)
  • ''
  • Dim SwApp As SldWorks.SldWorks, SwModel As ModelDoc2
  • Set SwApp = Application.SldWorks
  • Dim SwConf As Configuration, ConfArr, CustArr
  • ''
  • For jj = 1 To R1.Columns.Count
  • FileName = R1(1, jj)
  • If UCase(FileName) Like "*SLDPRT" Then
  • Set SwModel = SwApp.OpenDoc(FileName, swDocPART)
  • ElseIf UCase(FileName) Like "*SLDASM" Then
  • Set SwModel = SwApp.OpenDoc(FileName, swDocASSEMBLY)
  • ElseIf UCase(FileName) Like "*SLDDRW" Then
  • Set SwModel = SwApp.OpenDoc(FileName, swDocASSEMBLY)
  • End If
  • ''
  • ConfArr = SwModel.GetConfigurationNames

  • For ii = 1 To R2.Rows.Count
  • Str = ConfArr(ii)
  • ''
  • If Str Like "*" & Sht.Cells(R2(ii, 1).Row, 1) Then
  • 'Debug.Print SwModel.GetTitle, Str, Sht.Cells(R2(ii, 1).Row, 1).Address, Sht.Cells(R2(ii, 1).Row, 1)
  • SwModel.ShowConfiguration2 ConfArr(ii)
  • Set SwConf = SwModel.GetConfigurationByName(ConfArr(ii))
  • ''Stop
  • CustArr = SwModel.GetCustomInfoNames2(SwConf.Name)
  • For kk = 0 To UBound(CustArr)
  • SwModel.DeleteCustomInfo2 SwConf.Name, CustArr(kk)
  • Next kk
  • ''
  • If UCase(FileName) Like "*SLDPRT" Then
  • Arr = PrtCustArray
  • ElseIf UCase(FileName) Like "*SLDASM" Then
  • Arr = AsmCustArray
  • End If
  • For kk = 0 To UBound(Arr)
  • Select Case Arr(kk)
  • Case "材料"
  • Str = """SW-Material@@" & SwConf.Name & "@" & SwModel.GetTitle & """"
  • SwModel.AddCustomInfo3 SwConf.Name, "材料", 30, Str
  • Case "质量"
  • If UCase(FileName) Like "*SLDPRT" Then
  • Str = """SW-Mass@@" & SwConf.Name & "@" & SwModel.GetTitle & """"
  • ElseIf UCase(FileName) Like "*SLDASM" Then
  • Str = "组合件"
  • End If
  • ''
  • SwModel.AddCustomInfo3 SwConf.Name, "质量", 30, Str
  • Case "图号"
  • Str = R3(ii, jj)
  • SwModel.AddCustomInfo3 SwConf.Name, "图号", 30, Str
  • Case "图纸张数"
  • Str = R1(ii, jj)
  • SwModel.AddCustomInfo3 SwConf.Name, "图纸张数", 30, Str

  • Case Else
  • SwModel.AddCustomInfo3 SwConf.Name, Arr(kk), 30, " "
  • End Select
  • Next kk

  • 'Stop
  • End If
  • Next ii
  • SwModel.Save
  • SwApp.CloseDoc SwModel.GetTitle
  • Next jj

  • End Sub

复制代码
Macro1.zip (29.74 KB, 下载次数: 180)
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享教程|习题|模型|技巧 点赞点赞8678 拍砖拍砖312
SolidWorks机械工程师网
提示:建议使用谷歌浏览器浏览本网站!如单击这里下载!否则,可能无法下载附件文件!(支持大多数版本的谷歌浏览器,支持360和QQ浏览器的极速模式,即谷歌内核模式,使用IE和Edge浏览器,浏览个别网页以及下载文件时,会误报“***不安全”,此时需要单击“继续访问此不安全站点(不推荐)”才可以继续下载,另外,本网站不含任何不安全的文件,已联系微软公司解决,纯属IE和Edge浏览器误报)
回复

使用道具 举报

10

主题

65

帖子

93

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
233
QQ
沙发
发表于 2015-6-15 15:22:37 | 只看该作者
大谢!希望自己也能学会。
SolidWorks机械工程师网
提示:建议使用谷歌浏览器浏览本网站!如单击这里下载!否则,可能无法下载附件文件!(支持大多数版本的谷歌浏览器,支持360和QQ浏览器的极速模式,即谷歌内核模式,使用IE和Edge浏览器,浏览个别网页以及下载文件时,会误报“***不安全”,此时需要单击“继续访问此不安全站点(不推荐)”才可以继续下载,另外,本网站不含任何不安全的文件,已联系微软公司解决,纯属IE和Edge浏览器误报)
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭 卷起
关闭 卷起

手机版|小黑屋| GMT+8, 2024-5-5 01:39 , Processed in 0.177197 second(s), 36 queries .

SolidWorks机械工程师网 ( 鲁ICP备14025122号-2 ) 鲁公网安备 37028502190335号

声明:本网言论纯属发表者个人意见,与本网立场无关。
如涉版权,可发邮件: admin@swbbsc.com

快速回复 返回顶部 返回列表