solidworks批量图号分离_图号分离 - SOLIDWORKS - 机械社区 - 百万机械行业人士网络家园..._weixin_39610229的博客-程序员ITS301

技术标签: solidworks批量图号分离  

软件小白一枚,因为公司需要统一零件模板,并且和我们搭建的PDM关联,需要将文件属性写入配置待定里面。之前用图号分离宏只能把属性写入自定义信息中,配置待定中只有空的标题,分离后的内容不能读取。

+ d6 E  A& R2 q" P( ~! L下面是我在网上找的说是可以将图号分离后属性写到配置待定的代码,实际调试有错误,见红色代码。

' @2 _" M# m8 b0 ^+ f; B---

, ]' p$ T& E  ]6 F& fDim a As Integer) C- {+ d4 K& n2 l

/ m* B& q- u7 \! q

Dim b As Stringa3 ^* F  S8 L! d  W) i

/ z; c# @" \4 A: KDim m As String/ \2 p- ?8 s7 k; l/ ~

6 m1 J  E( L, n2 }) L6 [Dim e As Stringj0 I! a' I$ E; u1 f, D; r

9 S+ {6 ~6 E  U

Dim k As String) O$ A& q" o0 b/ a/ C' f9 e# p7 A

% Z6 Y$ f- Z* u

Dim t As String

6 M' B/ {8 ~$ a- f3 o( V0 L- W3 F1 M7 {+ n9 H7 s$ V9 m0 z

Dim c As String

) q$ e( ]+ N% L: f  V" c8 z( l4 N2 [" e* h/ b) m1 K

Dim j As Integer! ^+ O  m$ Z, S0 R

; E7 X, A6 l9 @' P: t+ VDim strmat As String* g8 e: p: R- W& t+ n6 C

" n0 Q7 ?7 Z; _! x

Dim tempvalue As String

% A# I' k9 c+ H4 k9 Y5 r9 y: u9 f1 |( ^0 b$ b9 R. W

Dim Part As Object+ I' E0 a- c) |9 M

$ I6 s2 X' K0 w, N) cDim swApp As SldWorks.SldWorks

9 L% a* T. f  j% S' R

. B) f$ g) E- m: z1 KDim swModelDoc As SldWorks.ModelDoc28 k3 z+ e+ D, d8 y3 Z' c, P

. g- k3 Q, c! J5 \" {Dim swConfig As SldWorks.Configuration1 L1 N" D- a( V! m

$ U& z! ?  @& `, ?. y# d, qDim swModel As SldWorks.ModelDoc2

" T: C8 i* a8 O3 H8 d& j5 K3 p9 D- `# S/ J! r6 Z5 G9 O+ u% P

Sub main()

# S5 q$ l( `" G. H& P% j- a& U; V/ P

Set swApp = Application.SldWorks

+ U1 P5 V7 k' n% j( {, ]+ ?* L( q( i4 n$ z# o

Set swModelDoc = swApp.ActiveDoc* i% ~" K3 |3 Z0 {  B" ?, V

# h% t; j! \* m0 e; G$ t  b. bSet swConfig = swModelDoc.ConfigurationManager.ActiveConfiguration

6 l; q7 `0 q/ V/ Z8 S) e) }$ Z- t

9 `. E0 Q/ k) B$ t: o) D* `# ?Set swModel = swApp.ActiveDoc1 R* J4 E! f- M* ]2 l5 I

1 p8 z$ q+ [7 H& N  ~( z* uSet CustPropMgr = swModel.Extension.CustomPropertyManager(swModel.ConfigurationManager.ActiveConfiguratio.Name) '配置特定延伸. a7 b& H; o, g1 `8 M

, S+ r7 h& k9 K% |2 ~' V4 z7 y'设定变量* j/ R/ b3 Q; _0 c+ @; S0 R. Q

0 v' @- V9 c( z8 E$ c& b7 A. L8 dc = swApp.ActiveDoc.GetTitle() '零件名1 D4 p# `! r7 d5 B1 \$ Q) |! L

+ Q7 o; o, Y4 G1 Vstrmat = Chr(34) + Trim("SW-Material" + "@") + c + Chr(34)

0 K. R( T  S0 D2 I) g# o: h5 F4 ?# V6 e

a = InStr(c, " ") - 1 '重点:分隔标识符,这里是一个空格,也可换成其他符号

8 m+ v+ |" U% \- E7 N" [) M; I8 X- M6 J) B. [

If a > 0 Then( ?* T: F& B) ]7 H/ }# }; g" E

' N+ E8 H+ w2 ~3 q

k = Left(c, a)

B9 V( }! [' |2 b3 F& b9 H" C

. x+ y! P$ s5 C3 t! Y2 k$ Pt = Left(LTrim(e), 3)

3 O, T  p# p# n% ]8 }

& z: J4 s2 Q; A, CIf t = "GBT" Then6 x8 x0 n7 D+ w9 h

: I$ b9 q7 j% N- i& o, fe = "GB/T" + Mid(k, 4)3 V( Y4 U; ^# b3 T

. P2 D* c3 a0 r5 q# ]2 ?

Else0 x, j4 p- Z( O: c5 {& d

# c% {& E# p3 q+ E4 V- \

e = k

7 q( q. ^9 e3 j! B/ S1 B/ ^9 T; j3 k  E

End If, R( k' {* g  Z& f) R7 p( ?2 y# I

7 ]( P7 V' j# ?! Kb = Mid(c, a + 2)

" A4 J9 A. V& Y3 }+ ~& {% Q' n- h' _+ S: K% B9 D7 j8 Q

t = Right(c, 7)8 X. x+ N+ n- \% {8 M

1 \6 {% ?1 R1 o1 Q8 K$ J9 xIf t = ".SLDPRT" Or t = ".SLDASM" Or t = ".sldprt" Or t = ".sldasm" Then

/ k! f. I6 X( N3 g5 ?7 C' V2 y% Q8 z! q5 t; U

j = Len(b) - 7 '消除后缀(区分大小写,即含4种)

! d3 A! i& z& @5 M/ A7 k$ W: A

# ~! A/ l9 y9 eElse' h% ~0 I, ?* q, l: d

/ b# ^  O* l4 N  M; @% r7 q

j = Len(b). h8 R" \2 E( F* c

; g- I" j  f4 r, V# j& ^

End If

; G; N1 J: t2 U' T! e, w6 \1 h4 z- F+ c1 B. v

m = Left(b, j)' L5 I$ f- S$ x5 D* x

" H; e0 z' r! z

End If

2 W( A# y9 E0 `+ L7 S2 d; y

$ O6 M2 n! {0 j8 w'删除栏1 e$ j. D8 F; |, f% @6 Y

3 d1 F! X3 O3 i8 rCustPropMgr.Delete ("图样代号"). p# J: t6 D' e+ C8 m0 U

- c! h. ?5 a$ l( J" k+ j' i7 m- _

CustPropMgr.Delete ("图样名称")

# R- I8 P: m$ |7 M# Z& `. o8 h  t: o4 H0 k; Z" c% p2 d& `

CustPropMgr.Delete ("材料")" F; u/ K& S0 U2 e9 c, r

+ @7 Y9 S& l4 O" O9 {'新增

0 H+ c  D% j$ n! ?; u2 x- a8 `" [* p5 f5 E, Y

CustPropMgr.Add2 "图样代号", swCustomInfoText, e

5 z) u8 M5 U9 N

h, @# v: Z- M' a5 x3 nCustPropMgr.Add2 "图样名称", swCustomInfoText, m

3 Z3 l6 I! {# }9 ?4 b8 @; r8 K+ v, m0 `" s, n

CustPropMgr.Add2 "数量", swCustomInfoText, ""

% J# k3 D0 B% C) D; f

7 {+ V" U2 r$ h* BCustPropMgr.Add2 "材料", swCustomInfoText, strmat$ F% d$ e3 Q' O' s

0 a/ c% j: j' f, ?$ w3 r& {CustPropMgr.Add2 "单重", swCustomInfoText, ""* [) N3 m7 i3 h& H

: I6 S, a. _( G  ?" k0 R( U- F! jCustPropMgr.Add2 "总重", swCustomInfoText, ""

+ A0 C# f( @) @; `8 P2 m2 A; ]" G

@2 s# k3 h7 S0 _CustPropMgr.Add2 "备注", swCustomInfoText, ""

/ L( c! O) x# z, |# @8 ?; ?+ A' _8 U& t. t$ E' D. L6 r2 ]

End Sub- ^, }: z" }% |, N  Y3 y

---

# V4 Q% o+ v  q, W* g( A" x# _( N想请教下大拿们,这个代码要怎么修改才能管用。之前的图号分离宏,可以让所有属性出现在自定义里。或者有没有办法加一段自动复制自定义里面属性到配置待定里去的代码?

: Z" _$ t; f7 d- d2 V" h1 X- y" c7 T+ J9 j, F1 `5 u

在线等大神解惑

$ z  j. H% J4 S% N3 B: f& L: @' R- w- v2 E. M) q7 i8 P+ S: w5 U

. \' q3 D) u6 J2 v) H. Y. K

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39610229/article/details/111856215

智能推荐

blur事件和ajax,js关于blur事件阻塞click事件_别蹭我的Wifi的博客-程序员ITS301

出现场景:页面有一个输入框A绑定了blur事件,且这个事件里面需要用到ajax请求数据,然后有一个按钮B绑定了点击事件;在A里面输入完信息后, 还没失去焦点的时候点击B,这个时候发现只执行了A的blur事件,而B的click事件没有触发。(ps: 若blur事件 仅仅只是普通操作,没有ajax异步请求的话 是没问题的)失焦点击测试// -----------------------clickTes...

你期待的Photoshop 2022中哪个功能吸引了你?_秋兲数落僷的博客-程序员ITS301

万众瞩目的2022年已经到来,那些大软件的最新大版本也陆续走到我们的面前,看到很多人都在追捧的期待Photoshop 2022,你知道ta具体有哪些变化么?来看看吧。创意世界在 Photoshop 上运行。全世界数以百万计的设计师、摄影师和艺术家使用 Photoshop 将不可能变为可能。专为任何人设计任何东西而设计。从海报到包装,从基本的横幅到漂亮的网站,从令人难忘的徽标到引人注目的图标,Photoshop 让创意世界不断前进。借助直观的工具和易于使用的模板,即使是初学者也可以做出惊人的事

音频算法speex中的aec分析以及解析_weixin_30412013的博客-程序员ITS301

算法原理:  Speex的AEC是以NLMS(Normalized Least Mean Square)为基础,用MDF(multidelay block frequency domain)频域实现,最终推导出最优步长估计:残余回声与误差之比。最优步长等于残余回声方差与误差信号方差之比。 只有改与泄露系数相关部分的代码,才是对效果影响最大的地方,因为根据泄露系数,最终会估计出滤波器的最优步长。...

运算符重载的正确用法_error0_dameng的博客-程序员ITS301_运算符重载,正确

#include<iostream>using namespace std;class Complex{public: int a; int b; friend ostream& operator<<(ostream &out, Complex c3);public: Complex(int a=0,int b=0) { this...

java 执行commandline,CommandLineRunner是一个带有run方法的简单spring引导接口。Spring Boot启动后将自动调用实现CommandLineRunner接..._ARUANTOU的博客-程序员ITS301

CommandLineRunner是一个带有run方法的简单spring引导接口。Spring Boot启动后将自动调用实现CommandLineRunner接口的所有bean的run方法。Command Line Runner在加载应用程序上下文之后以及Spring Application run方法完成之前执行,相当于你的应用的初始化过程,一般用来实现一些数据预先加载或预先处理。@Spring...

多元统计之主成分分析(PCA)_Q_Ella的博客-程序员ITS301_主成分分析前三个变量的系数和方差向量

1、基本思想目标:在保证数据信息丢失最少的前提下,将原来众多具有相关性的指标转化为少数几个相互独立的综合指标。作用:(1)、解决多重共线性。(2)、将高维数据进行降维处理。2、数学模型如下所示数学模型,X1-XP为原始指标,F1-FP为新的主成分,每一个主成分都是原始指标的线性组合,充分反映原始指标的信息,并且相互独立。模型需要满足的条件:(1)每个主成分与原始变量的系数的平方和为1。(2)主成分...

随便推点

「Python数据分析系列」21. 自然语言处理(下)_数据与智能的博客-程序员ITS301

来源 | Data Science from Scratch, Second Edition作者 |Joel Grus译者| cloverErna校对 | gongyouliu编辑 ...

python class函数报错_Python multiprocess pool模块报错pickling error问题解决方法分析_天文在线的博客-程序员ITS301

本文实例讲述了Python multiprocess pool模块报错pickling error问题解决方法。分享给大家供大家参考,具体如下:问题之前在调用class内的函数用multiprocessing模块的pool函数进行多线程处理的时候报了以下下错误信息:PicklingError: Can't pickle : attribute lookup __builtin__.function...

高斯混合模型GMM聚类的步骤和推导_虚宇宸轩的博客-程序员ITS301_高斯混合模型步骤

0. 引言  由于最近要做聚类算法方面的内容,看了很多资料,在高斯混合模型(GMM)这里一直没有一个让我完全推导清楚的、理解的文章。经过三天打鱼两天晒网 不懈努力,总算是有一点自己的理解,我希望尽量通俗地把GMM讲明白,同时也希望尽量详细地对公式进行推导和解释。因此,我会先给出GMM算法的总体步骤,保证拿上先可以直接使用,然后再进行具体的推导和讲解。  文章主要参考周志华老师的《机器学习》,同...

hdu 1814 Peaceful Commission 2-sat 按字典序输出_luckyone2014的博客-程序员ITS301

题意,n个党参加会议,每个党有两个人编号2*n-1, 2*n。 其中m对人敌视。如果每个党派必须有且仅有个人参加,而且参加的人中没互相敌视的。如果可以,输出n个参加的人的编号,不行的话输出NIE。

我常用的资源整理和分享_dancria的博客-程序员ITS301_资源整理

最新资源盘:链接:https://pan.baidu.com/s/1O5wFqfw4YskNvDCiBz-tDg提取码:q1rj1,格式工厂:http://soft.onlinedown.net/soft/983615.htm2,pr-cs65,GBaseStudio6,JDK :a,(jdk-8u221-linux-x64.tar)7,JMeter:使用教程:http...

MiniGUI更换键盘皮肤_anyuliuxing的博客-程序员ITS301_libmgi

前言MiniGUI原来的键盘GUI已经有点不符合现在的需求,所以需要定制一套皮肤,根据我定制皮肤的过程,写一遍流程文档,做一下笔记,为以后再定制皮肤提供参考,先看一下定制好的皮肤录制的色彩有点失真,看一下截图1. 皮肤资源位置在libmgi-2.0.4/src/softkeyboard/softkeyboard/分辨率,目录下有一些图片资源,里面是图片转为十六进制的c文件,总共需要替换...

推荐文章

热门文章

相关标签