机械社区

 找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖
楼主: 半夏丨迷离

图号分离宏的使用问题

[复制链接]
发表于 2021-3-8 17:14:54 | 显示全部楼层
本帖最后由 苏州装配工 于 2021-3-8 17:27 编辑 % N1 H5 g% |+ h& M  j6 O( p  w
7 R5 o3 Q$ z6 O1 }
Dim swApp As Object
9 Y7 q& F4 e6 Q7 u; D* k- b# Z- m0 z# |7 r; c9 ~% p
Dim Part As Object$ q2 ]) }+ v" _* x$ L: @! o

4 a" c1 ^1 P$ [Dim SelMgr As Object  E! M8 x. R( j0 f  z
* A  W! j+ a+ |4 n
Dim boolstatus As Boolean& D9 {6 D' Z/ o1 b7 o% e3 w
1 R; T6 s2 m# Y2 P7 F
Dim longstatus As Long, longwarnings As Long9 d8 f7 S7 s7 N; H

+ F0 Z9 K* O* u* s3 IDim Feature As Object
' F1 \+ z) Z: \! r2 F( @7 q: C& [& i- s: T* `5 T7 M/ K' z
Dim a As Integer
/ }4 x! @! l; `: U. M
; C8 p. C- c  K/ x7 L# xDim b As String8 n+ n/ H+ \  U" ?* F% A* D" a
$ a7 q7 |0 z/ c: F- f. R
Dim m As String) W3 M+ {) g  P' d: b

: M) P) U6 C7 W' D/ z9 f: QDim e As String: X9 U: z  I. U1 a, ]" R4 f

! @) q* X) t6 p% Q  Y# V9 H$ O: \Dim k As String
: u% l" M$ ~; X9 M" L) w: \
$ @2 R, H/ x; v4 l0 c* qDim t As String
+ z! o' Q7 ^; D: O* q+ h; u5 R
( ]$ l9 f6 _9 }: d% QDim c As String
# z& |  N" a; X3 ]4 W* ^
" M% a. d4 N* u& _# z7 [. pDim j As Integer+ k2 [+ l3 t- c( a: |9 H8 D
. t, i8 w) Y, z
Dim strmat As String* Q+ }  b, @7 K
5 x; ^( G7 r6 K$ }3 C) t
Dim tempvalue As String
6 j5 ~# J2 l# _. ~! z; W& P) \( l  u+ Z8 [/ i2 R. _5 a" T
Sub main()$ S: }8 L4 L- C# m0 j& u  Z

8 Z) |9 m% W$ h% Q$ l'link solidworks0 x7 v' y. \) r: u

, u# s" b- C% iSet swApp = Application.SldWorks
% U+ J8 S+ H! I
* Y; @: {( |- Z9 j( USet Part = swApp.ActiveDoc
  a% z# @7 I- y) h3 h. o' e+ y
/ L" p  @1 ]9 T# e, R: h! ISet SelMgr = Part.SelectionManager
- r5 ~# Q/ i4 K# m
3 b' |# |' H  N5 uswApp.ActiveDoc.ActiveView.FrameState = 1
1 h; v; q( P! j2 q/ X3 x
9 u6 R0 w  u+ n( G, O% `3 N& H'设定变量
. D+ V6 l) I9 [* y5 b. T/ y0 x, i, f! ?9 t, a( l3 c+ G+ p
c = swApp.ActiveDoc.GetTitle() '零件名) n+ A9 v$ t& R+ N- m# [. l' _

2 X2 r' K# f5 l2 D0 n9 Cstrmat = Chr(34) + Trim("SW-Material" + "@") + c + Chr(34)  X# Y& }+ b5 g9 {8 s6 S& O

2 d6 [1 ^$ g% c7 W8 @( [blnretval = Part.DeleteCustomInfo2("", "代号")+ S5 W1 {/ a! {2 A
6 v1 V8 {) b, o6 [+ B* Y
blnretval = Part.DeleteCustomInfo2("", "名称")
' Q- [/ K9 ?1 m! a
, u$ {8 ?# R: ?, I& Tblnretval = Part.DeleteCustomInfo2("", "材料")1 {# J: [& g) q: f- f7 I, Y

% E( I# E# n  A6 R, A5 @  F) Da = InStr(c, ".") - 1
7 @# h6 K/ A5 ?- Q6 I5 l$ c9 g" A. O! j% Q
If a > 0 Then
& X: |6 F, ~6 u( _7 Q
( V8 d) j3 V' R; N/ z+ N    k = Left(c, a)
: Q3 {0 N9 J4 U: J$ w  M# M8 J+ l1 Z( a: y3 k* m# w6 {
    t = Left(LTrim(c), 3)
: w+ R% {  H, P0 P+ u* u# J3 _2 X
    If t = "GBT" Then8 x; w; F- m" [& D2 H7 ^1 B

4 @4 n, E8 h7 t6 e9 j( n, h2 h        e = "GB/T" + Mid(k, 4)
( F) v$ j- K3 q
; t8 M* i4 ]3 O" o! ^& ~# u    Else. M& s% b+ }! k8 H
" H( F! k1 F4 K% j* W2 }2 z
        e = k
+ T% H7 P$ ~4 P$ F  Q! U* M" g* S7 o+ b& Q2 a
    End If8 Q6 X/ E( ?) ^! F% d
3 Y7 _( q- W* [3 z; r
    b = Mid(c, a + 2)
* n" ^/ B% w1 |1 j; Q+ ]7 v) r9 F2 K* _! b# W& Q
    t = Right(c, 7)
# h: n5 P9 K& |% {  o* \  I; R4 L8 Y$ ~
    If t = ".SLDPRT" Or t = ".SLDASM" Then
$ z  ~1 X' S* w1 ~& ^) ]
2 ]0 Y8 c" |1 A, ?& c        j = Len(b) - 7
  A% ?9 m! C$ R' i" y3 w$ w' I3 D8 L* T' _$ w6 P3 N0 d+ o
    Else. l- I( F( h, @3 J" T/ c' u
: U# t( H. J* |: P$ F/ R3 _* x9 c
        j = Len(b)
& q5 A+ _0 w$ V/ x$ z2 c' b* i7 S( Q  R! ]  B
    End If
) B/ r7 f+ Z8 V( H6 h9 t7 v6 p1 r4 W    9 O6 B) `$ @# n9 I
  If j <> -1 Then
0 S- a- T/ b8 g/ i1 e+ B5 d4 H  
: r. W' ]) k. {, o    m = Left(b, j)" [. j6 i! }& \- D; @8 E. {
; E2 u& A4 _+ r4 x. V) ?
   End If
- _- X1 d6 d/ }   
; T' u* ^/ s5 h% w+ ^. N$ H# A  W7 ~$ [3 h2 Y
End If* _- R/ g; R# f, t

( Z6 M1 k7 n5 G) h" kblnretval = Part.AddCustomInfo3("", "代号", swCustomInfoText, e)
2 m" m3 b' W0 R! q& z& O8 t5 a4 X6 B# t- Q/ f
blnretval = Part.AddCustomInfo3("", "名称", swCustomInfoText, m)8 F: C5 _4 R. Z1 _
- Y/ V+ K5 ]6 c/ c6 M
blnretval = Part.AddCustomInfo3("", "表面处理", swCustomInfoText, strmat)
- e7 p; Z6 Q) v; T" r" F
2 e! d' W+ B8 q5 A* {End Sub
+ {) _+ @+ f4 o----------------------------------------------------------------------------------------------------------------
2 d- B! e( e* S; ?* Z改了一下,亲测可用。有哪里不符合你的要求回帖再改咯。

点评

出现不良后果概不负责,哈哈哈哈哈哈哈哈哈哈哈  发表于 2021-3-8 17:16

评分

参与人数 1威望 +1 收起 理由
未来第一站 + 1 热心助人,专业精湛!

查看全部评分

回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-8 17:31:45 | 显示全部楼层
魍者归来 发表于 2021-3-8 16:46
- ~2 C( I( P# ~悄咪咪的说,这个原版是我写的
. L/ `9 r( U& c
惊现大佬??
& s0 B% Q# S, [2 I- z4 `
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-8 17:32:39 | 显示全部楼层
魍者归来 发表于 2021-3-8 16:52
8 K+ U7 k  x! |' {正解,如果不需要分离文件名,只需要改工程图的模板就可以了
. M; `! C7 `) q5 \: r3 t4 R  Z
咋改?求教
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-8 18:04:20 | 显示全部楼层
苏州装配工 发表于 2021-3-8 17:14
* ^/ a& z; l( p) F3 e6 r: c1 Y2 v! lDim swApp As Object8 q5 j. K4 Z4 f7 ]! C5 n1 G  P
9 z% H  H1 p% A: V! }  I
Dim Part As Object

3 M6 u1 ^: W7 R* F9 F  x还是不对

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
回复 支持 反对

使用道具 举报

发表于 2021-3-8 18:51:30 | 显示全部楼层
半夏丨迷离 发表于 2021-3-8 18:04+ C: C8 l+ @+ m! f' i
还是不对

! e* h6 o% \6 d, I最后那三项是宏生成的吗?自己图带的话,删除了,宏自己生成出来估计就对了,再不对就不知道了,你可以单步调试一下。我用着没事的。6 |7 Y: C- c% J. j  H/ O6 H8 E
回复 支持 反对

使用道具 举报

发表于 2021-3-8 19:20:16 | 显示全部楼层
zhufeng_hgp 发表于 2021-3-8 15:22
7 i% ]1 X0 j: ~% t8 }- C8 w我用的是凯元工具,图号分离挺好用的,还能读取材料,填入日期,作者等内容,就是非会员一次只能处理9个零 ...
2 a- A5 Z2 N6 `, c4 p
  我是会员2 |. |: @  c' o4 Y4 {
回复 支持 反对

使用道具 举报

发表于 2021-3-8 21:23:47 | 显示全部楼层
图号加名称一种奇怪的存在。
回复 支持 反对

使用道具 举报

发表于 2021-3-9 01:19:30 | 显示全部楼层
自定义属性卡都没有 弄好 肯定识别不了啦,你要把自定义属性连接到工程图模板,然后画图也要用这个模板。B站 搜 SW自定义属性工程图。众所周知B站是和学习的地方
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-9 09:27:33 | 显示全部楼层
特斯拉·MY 发表于 2021-3-9 01:19# c, h8 D, w9 ]
自定义属性卡都没有 弄好 肯定识别不了啦,你要把自定义属性连接到工程图模板,然后画图也要用这个模板。B ...
- L! W1 Z4 ~  l
谢了,我去查查1 }  [. z; C; T  }; z1 v+ m

, x2 F+ ~& H) o, a- G
回复 支持 反对

使用道具 举报

发表于 2021-3-10 11:06:04 | 显示全部楼层
看起来好复杂的样子。。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

小黑屋|手机版|Archiver|机械社区 ( 京ICP备10217105号-1,京ICP证050210号,浙公网安备33038202004372号 )

GMT+8, 2025-2-19 06:06 , Processed in 0.061296 second(s), 15 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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