QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

查看: 3880|回复: 40
收起左侧

[求助] 求梁大帮助指点

[复制链接]
发表于 2015-12-1 11:42:52 | 显示全部楼层 |阅读模式 来自: 中国广东广州

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

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

x
梁大,我现在研究SW批处理宏,想让运行宏时自动批量打开某一个文件夹下的零件和装配体文件,门外汉不知道完成这个功能的这句语句的代码应该怎么写?请求梁大指点下。谢谢。" ~( W: f3 D) a
 楼主| 发表于 2015-12-1 11:46:56 | 显示全部楼层 来自: 中国广东广州
@ryouss  梁大,求指点
发表于 2015-12-1 15:01:36 | 显示全部楼层 来自: 中国浙江嘉兴
NC@jiang@nan 发表于 2015-12-1 11:46; V5 M( S1 u7 m
@ryouss  梁大,求指点

6 H  {; \- ]( B$ s# `& n$ C) @指點不敢,相互研習就是0 n" X1 p8 K8 Q4 C3 f9 r4 U  S

& Q; L. l8 s3 Y! U/ @3 T  x' E5 y如下試試, inputbox 之對話表輸入文件路徑  如 C:\TEST\     注意兩個  " \ " 符號8 \: n+ i" A& y7 _* o/ {9 z
1.jpg
. Y3 r! V% a" F; e! @7 L" \+ e9 m7 ^" v: F, A7 z. |+ g6 N
1 u: {4 S( w6 A. D1 T& W9 A, j( M
OpenFile part_asm.rar (10.23 KB, 下载次数: 39)
 楼主| 发表于 2015-12-1 16:31:22 | 显示全部楼层 来自: 中国广东广州
ryouss 发表于 2015-12-1 15:01
* o! o, ^& V; k. a9 w3 S指點不敢,相互研習就是- t( J7 a0 S) S5 k- e% O, K/ M6 m
; M7 T) h2 A5 m" L7 z, Y% S
如下試試, inputbox 之對話表輸入文件路徑  如  C:\TEST\     注意兩個  " \ " ...
5 H1 d* I4 ]. e
谢谢梁大。
8 ^3 H2 R6 E5 F1 Z' u! D$ h" t我原来这样做的。我以为有可以在同一个语句里同时设定打开零件和装配体的办法,看来还是只能用这种先处理零件然后再处理组件的方式了。
9 d- {" u* b4 }谢谢梁大指点。
发表于 2015-12-1 20:41:22 | 显示全部楼层 来自: 中国浙江嘉兴
本帖最后由 ryouss 于 2015-12-2 08:58 编辑
/ T7 u8 D9 y9 V- ?1 S& x
NC@jiang@nan 发表于 2015-12-1 16:31
/ [- i2 H! N* m4 L* R谢谢梁大。
* F- n2 ^8 J. y# s' O我原来这样做的。我以为有可以在同一个语句里同时设定打开零件和装配体的办法,看来还是只能 ...

) @1 q% x+ w5 {2 N指令是死的,編程是活的,* i) z- y& U7 b. k' {
所以編程的寫法林林總總形形色色,
- _) D, `3 L+ Q5 d4 C若是小編程尚不需計較寫法,能達結果就好,$ B4 K+ G+ [1 [! q2 ^
大編程就要考慮許多如執行效率日後維修及易用性擴展性...
) O/ R) X9 d! C9 j+ I% @) V
' J3 D. r$ K9 M8 F0 _2 y6 r3 K0 y3 y2 m2 |' {8 a3 E
如下是另個寫法做參考,邏輯來說應該是會比2#效率好(若是開檔不多也是看不出),3 T# \# F  `, n1 B/ `! G1 X
因只是在開檔文件路徑搜找一遍即可,2#是要搜找兩遍.. q* s/ t: O5 [
1 W+ m* p. K5 |; ~5 m- U
4.png 7 o! S& X; a! G0 j0 U7 Y

+ B& }) U2 T; f& D; u! X/ J& E% T0 o% X4 [( a( Z
OpenFile Part_Aam_1.rar (9.2 KB, 下载次数: 16)

评分

参与人数 1三维币 +6 收起 理由
阿帕奇 + 6

查看全部评分

 楼主| 发表于 2015-12-1 22:11:49 | 显示全部楼层 来自: 中国广东深圳
ryouss 发表于 2015-12-1 20:41
2 ]4 ?  _0 _! N1 w指令是死的,編程是活的,
2 ?3 d0 Z+ ?8 r' R7 t8 e4 C1 ~所以編程的寫法林林總總形形色色,8 E8 F3 y% Y) a, J7 w, r0 b" A5 U
若是小編程尚不需計較寫法,能達結果就好,
+ M( x  A2 w) q4 s( g: o' c
是的,我原来想的就是这样,在路径下找一遍,碰到装配体时就打开装配体,碰到零件文件就打开零件文件,整个目录下只搜寻一遍。
3 U- k& h( |, w0 ^/ ]8 Z谢谢梁大指点,下载研究了。
发表于 2015-12-2 09:39:06 | 显示全部楼层 来自: 中国浙江嘉兴
如下是SW API 有關開檔的原文資料作參考$ z, R6 k! O  H

" [4 m' u" [! RSelect All in Part, Assembly, or Drawing (VBA)
) f/ Y; V& a! `: }
7 ?7 E: [9 s, E# r: @This example shows how to select everything in the graphics area of a part or assembly document or in the sheet of a drawing document, as if you box-selected everything in the graphics area or the sheet.; T( V# z- p* s; Q
' ******************************************************************************3 x9 h1 }7 \* n, _0 \8 c& |
' Preconditions:, @  V$ F$ w- t$ W* r' l2 g1 h
' 1. Part, assembly, and drawing documents opened by the macro$ C3 I7 B, n& |$ T% j: u
'    exist.
- |+ y' B6 ?3 f+ v! z7 A' 2. Open the Immediate window.. W' C: K8 T# ]& T
'. w) G+ {0 u7 k( k; _& m& `
' Postconditions:
0 @: H7 W# {5 R" G: N/ b' 1. Examine:' {6 ?0 B4 {4 {: y0 Z& g7 G
'    * Sheet to verify that all of the entities in the drawing8 f) h! w/ @3 d1 \- w0 ^1 Z
'      are selected.6 [  M9 N9 K# W: j7 c3 @
'    * Immediate window to see how many entities are selected.0 u$ t! Z; s8 ^# M) `" ?
' 2. Click Window > bolt-assembly.sldasm to switch to the assembly7 V' y3 L6 }& G+ R" ^
'    document.* g/ o, E8 k! m3 [( Q* }& K/ h
' 3. Examine:
& V5 T% o. e& {'    * Graphics area to verify that the all of the components
& ~: y$ M2 u' g% L'      in the assembly are selected.7 Y1 L: N$ L' s. r& n2 o" A
'    * Immediate window to see how many components are selected." u2 U( d/ [0 y; U) j
' 4. Click Window > bolt.sldprt to switch to the part document.
$ V& C' J  \& p  ^' 5. Examine:
  e$ V* ?  c0 z  e4 d" J  g$ t9 \'    * Graphics area to verify that the all of the edges% p, C$ |* {: Q; l+ F2 w, R# z
'      in the part are selected.9 i+ c4 X8 ^8 g" W
'    * Immediate window to see how many edges are selected.
3 E% L! f' s$ F'
+ V0 W) D$ ^6 |% O, p' NOTE: Because these documents are used elsewhere, do not save any8 y3 m  I+ f+ p6 m
' changes when closing them.# e0 W, @- A5 w& `( d  Q2 Z
' ******************************************************************************
6 p$ S( b- S( w% z' Z2 cOption Explicit& h! h: F4 R' x7 g6 v) G% \
Dim swApp As SldWorks.SldWorks) r; c; n. `/ m' e2 u
Dim swModel As SldWorks.ModelDoc2# ]: |( ^& k, d* S; ?+ I  W) O% x
Dim swModelDocExt As SldWorks.ModelDocExtension
: k0 n% k' Y! g$ o1 k( h5 TDim swSelMgr As SldWorks.SelectionMgr
/ Q# y* w, `+ ~/ `+ |9 I6 mDim partFile As String% h' p2 g& ?8 ~  Q) ?2 c
Dim assemblyFile As String
0 N" y' q7 b& L, P( }% FDim drawingFile As String
+ J& t& r. {0 d8 t- fDim errors As Long1 [( ]) d6 d! [
Dim warnings As Long1 j2 e2 s2 x3 a3 a/ _, Y1 _; A6 q
Dim selCount As Integer
/ @3 j5 ?/ f& j# b* a  _& U" U4 iSub main(), p* G% r- [% g9 D8 m+ Q
    Set swApp = Application.SldWorks
, h" p, B6 E( T7 Z5 G    9 e2 D  c! d# g, z* M/ V
    ' Open a part document and select all edges in the part5 Q! j2 D' ~* q* d# G
    partFile = "C:\Program Files\SolidWorks Corp\SolidWorks\samples\introsw\bolt.sldprt"
5 |, u6 `$ R, K7 D    Set swModel = swApp.OpenDoc6(partFile, swDocPART, swOpenDocOptions_Silent, "", errors, warnings). l1 j6 V; q# @' |% c2 ~7 m( v
    Set swModelDocExt = swModel.Extension" `9 Y2 M/ |) |1 l2 W
    Set swSelMgr = swModel.SelectionManager
; _" g- J- v" J% o3 B& k6 z    'Select all edges in part% u5 D& x# ?) Q  P3 V: @4 Z
    SelectAllinDocument
& ~& ^3 W0 b4 z( s   
4 b9 T+ @1 ~8 u; {    ' Open an assembly document and select all components in the assembly
; @; r8 W' i5 C6 o: H% r    assemblyFile = "C:\Program Files\SolidWorks Corp\SolidWorks\samples\introsw\bolt-assembly.sldasm"9 Z" ]) S- L, F7 |+ T9 t
    Set swModel = swApp.OpenDoc6(assemblyFile, swDocASSEMBLY, swOpenDocOptions_Silent, "", errors, warnings)
* b% a  L6 L3 L: S6 e9 T+ }) M/ I    Set swModelDocExt = swModel.Extension3 O4 H8 {2 n2 k  p+ j) {
    Set swSelMgr = swModel.SelectionManager
( L. W3 n$ u5 n5 e, k    'Select all components in assembly. v, [# E6 l4 m; F6 t; T. D
    SelectAllinDocument
5 ?) V7 F6 V; ]8 H; I4 x    4 u: n+ n# X; K. B/ R0 U) g7 a6 c  N7 j
    ' Open a drawing document and select all entities in the drawing
2 U1 G% T( k& M1 Z    drawingFile = "C:\Program Files\SolidWorks Corp\SolidWorks\samples\introsw\bolt-assembly.slddrw"8 m+ }' Y, H. C6 W' k( ]
    Set swModel = swApp.OpenDoc6(drawingFile, swDocDRAWING, swOpenDocOptions_Silent, "", errors, warnings)
# N+ U% d  \; O" x    Set swModelDocExt = swModel.Extension
, y% Y# f) H0 o3 ]    Set swSelMgr = swModel.SelectionManager- q- t. R$ m& i
    'Select all entities in drawing$ v5 u' T* Q5 Q2 _! U) o  w* l
    SelectAllinDocument
! i  k# Q0 {7 ~- k! \1 ]. D   
: j) w1 r5 S8 L. hEnd Sub4 S0 E  X" d. h& F/ t
Sub SelectAllinDocument()! a+ {* M5 }% `: }4 \
    ' Select all edges in a part, all components in an assembly,
! N: i& F1 G: C2 e    ' or all entities in a drawing% I' h- r- }! a3 ~$ a3 U4 X
     swModelDocExt.SelectAll   
" F. l0 B- K: c$ }    ' Get and print the number of selections& H( m* x  O% m. Y' J) i! {- O$ p5 {0 c
    selCount = 0
1 B' B6 u  @, ^    selCount = swSelMgr.GetSelectedObjectCount2(-1)    7 X; l7 ~  X, `* N4 A- N
    Select Case swModel.GetType4 `1 `4 a2 T$ N4 E) z% _7 n
    Case swDocPART' ~' n7 g: [; D, {8 @6 ^  e9 Q
        Debug.Print "Number of edges selected in part          = " & selCount' C& z3 E& x" E+ R6 P" d! \3 V
    Case swDocASSEMBLY: j4 r3 z/ Y8 p) i
        Debug.Print "Number of components selected in assembly = " & selCount9 y! \% d: b% G
    Case swDocDRAWING
6 B  x1 c* u2 d7 R9 h  |! z        Debug.Print "Number of entities selected in drawing    = " & selCount+ K, ]$ D: ]/ t" v6 w
    Case Else
5 C, j' R4 G2 N1 a0 w) j        Debug.Print "Unknown type of document."
& A4 h* G4 u* x: k3 f    End Select
4 L0 F. d' G  K  u( i: M    / \" c6 O  Y! u6 j; F  J/ ~
End Sub
3 k" s: O6 _' p# K
 楼主| 发表于 2015-12-2 20:41:01 | 显示全部楼层 来自: 中国广东深圳
ryouss 发表于 2015-12-2 09:39. X3 ?* o9 Z* D7 B& i, ?' f
如下是SW API 有關開檔的原文資料作參考
6 u' `& k* z$ u, Z/ i: g* O& F$ }/ A2 S* v) ^; d% `& C- O
Select All in Part, Assembly, or Drawing (VBA)

. Q2 f; j  m: i; Y- lAPI帮助是英文版的,想搜索都不知道用什么关键词,梁大见笑啦。
/ O( }# X: ]1 g4 o: I1 D& l5 y  K另,您昨天发的那个宏文件,因为我水平太差昨天晚上看了想了很久,应用应该还是能够瞎应用上了,但是还是没理解透彻,第一点就是不知道这宏(或者是所有的打开SW文档的宏)的原理是不是先把某个目录下的文件调入内存,然后去分析它的后缀名,后缀名最后三位符合您这宏文件里设定的"prt"或者"asm"时才正式在SW软件里打开文件?第二点就是,您的这个宏代码并没有指定当后缀名后三位是DRW时怎么处理,是不是后缀名后三位是DRW时SW默认不会打开这个文件而是只有在后三位符号宏文件里设定的“prt"或者"asm"时才会打开文件进行处理?
1 m# ?3 n5 ~3 x" y$ h因为家里的电脑配置真的有点烂了,09年时买的电脑,平时用得很少,一直没升级,跑现在的版本的SW太卡,有的内容试过了,有的还没尝试试验,有啥常识性的错误请梁大谅解。明天把您这宏文件拷到公司去试验研究一天,谢谢梁大了。
发表于 2015-12-2 22:43:37 | 显示全部楼层 来自: 中国浙江嘉兴
13993359550 发表于 2015-12-2 22:10" o0 @* c, b3 w2 p0 d8 |( i8 r) j
梁大,有个问题一直想请教,不知道,您老愿意讲一下不,就这两个苦思不得其解,谢谢您了
- L" Q' v3 u, \( A
怎麼發在這裡呢!太不尊重樓主了[/color]
发表于 2015-12-2 22:50:59 | 显示全部楼层 来自: 中国浙江嘉兴
NC@jiang@nan 发表于 2015-12-2 20:41, G) H8 w% f- q3 Z8 ]1 R
API帮助是英文版的,想搜索都不知道用什么关键词,梁大见笑啦。
: o# ~# R+ ?$ Z另,您昨天发的那个宏文件,因为我水平 ...

1 j/ F; s$ F, `# ^. f6 q Select Case Type_( {; o, |9 U, G( z2 n
'開零件檔$ x! L& s# H5 i5 v$ O
            Case "PRT"
/ Z$ [4 K2 L# s3 t: o  K$ O                Set swModel = swApp.OpenDoc6(path + sFileName, swDocPART, swOpenDocOptions_Silent, "", nErrors, nWarnings) '開零件檔$ Q7 D0 M# Q& Z9 l' @1 J. @
'開組件檔. m$ M5 H: b* A
            Case "ASM"
1 u. V" v" _( F7 C  e" X- @% i7 T6 q% D' L                Set swModel = swApp.OpenDoc6(path + sFileName, swDocASSEMBLY, swOpenDocOptions_Silent, "", nErrors, nWarnings) '開組件檔: b# V5 N' O8 y) }" q
        End Select' ~2 j7 c/ c% g+ S) k$ u) Y

1 X2 \* K: Z3 `4 S
2 y/ u% q% e2 I/ j% Q2 B. d是如上語句把工程圖篩選掉
发表于 2015-12-2 22:51:03 | 显示全部楼层 来自: 中国浙江嘉兴
本帖最后由 ryouss 于 2015-12-2 23:37 编辑 ! n. A/ Y4 d8 l% ]! [; W
NC@jiang@nan 发表于 2015-12-2 20:41
8 E) a3 P( F6 S( p/ i: _. }9 H, vAPI帮助是英文版的,想搜索都不知道用什么关键词,梁大见笑啦。
; {8 L6 d& ?4 V另,您昨天发的那个宏文件,因为我水平 ...
  1.     Select Case Type_
    " C- c; _# J/ y" n: \% B
  2.     '開零件檔
    5 H! P# @$ ?" |' u+ H7 U$ k% Q
  3.    Case "PRT"
    " n# V! C5 p; c5 z7 P( q" ~
  4.    Set swModel = swApp.OpenDoc6(path + sFileName, swDocPART, swOpenDocOptions_Silent, "", nErrors, nWarnings) '開零件檔; l0 q' k# X) G5 C4 a6 S0 L$ D
  5.    '開組件檔  P$ c) w- F" f2 J& R5 ]) j
  6.    Case "ASM"
    ! t( _# r" u# X6 _, p* c7 u$ }
  7.    Set swModel = swApp.OpenDoc6(path + sFileName, swDocASSEMBLY, swOpenDocOptions_Silent, "", nErrors, nWarnings) '開組件檔
    3 B6 K& B# X; Y5 C6 x/ r) [' w
  8.    End Select0 k" P8 o/ w2 r. L0 B5 Q7 v6 }" V. w
复制代码
  V. y& G' `. m6 t: j. [
, @. \8 Q# @& o2 z0 m
8 m' v( \7 K  m3 u1 }6 M- ]- {! v
1. 是如上語句把工程圖篩選掉當第1項的  Type_ 取得是 工程圖  DRW  就跳出第8項.2 K. K! V" s/ k5 k. r( d6 j
    若是 Type_ 取得是 零件  PRT  就跳到第4項,執行  Set swModel = swApp.OpenDoc6(path + sFileName, swDocPART, swOpenDocOptions_Silent, "", nErrors, nWarnings) '開零件檔    : t1 a6 @+ T  o7 i
    再跳到第8項,結束選擇循環.9 y9 B0 \4 R. Q( p/ S
2 x, ?) Y8 J9 {, B. z
Select Case Type_
1 {2 B  W' x3 o# O( r3 f4 U  R           .  g, \1 G$ l3 n" ?/ X
          執行內容2 {0 G5 W8 h% y
           .6 }+ Z7 v* _. R) u! O7 r2 G+ Y
End Select
8 b7 W) P0 w7 H/ m
  _  I/ D, U# L" U1 [
如上是個選擇循環+ Z$ L8 J! t& `! r! O! [* K) }
  E" n: f0 F) i( @5 u
+ \1 B0 K+ P  s8 L! D, a
: Y5 Z* h- p2 [2 v5 ?
2. 查有關開檔的關鍵語是   OpenDoc6
1 F5 p2 w: w$ `' ?$ y* J, G! R% f' {8 I' t' x

3 J) f9 i4 I+ T- R8 E
* P9 m9 O* x" N. l1 P
 楼主| 发表于 2015-12-3 00:41:07 | 显示全部楼层 来自: 中国广东深圳
本帖最后由 NC@jiang@nan 于 2015-12-3 01:15 编辑
3 n7 Z7 \" j# V: `$ p% N' h
ryouss 发表于 2015-12-2 22:50% s5 D+ F; m  ~& a
Select Case Type_  x" f9 d( r3 Y9 j- K+ b* b% H
'開零件檔
+ s4 z0 ^: V, a  H7 e( J            Case "PRT"

( c) g$ T4 d7 V6 V# y) \梁大,从回您上个帖后,一直在研究学习您的这个宏文件,到现在终于理解一二了。把提取文件的代号和名称写入配置特定属性栏的宏集成进去了。谢谢梁大指点了。
  B) J) F2 T$ y0 U" |+ b" V# K& a$ f% A5 S' ?; c
附上集成批量提取文件名中的代号和名称的宏文件,一方面请梁大有空时看看再指点指点哪里可以进一步改进,另一方面给有可能需要的朋友下载研究改进与使用。
/ Z% T! u9 E; c3 |7 n8 X5 q

批量提取代号名称写入配置特定属性.rar

17.07 KB, 下载次数: 28

发表于 2015-12-3 09:27:37 | 显示全部楼层 来自: 中国上海
ryouss 发表于 2015-12-2 22:43
2 d8 w) E7 m4 @1 i2 n$ V. w怎麼發在這裡呢!太不尊重樓主了

9 M; ^$ t: Q2 t0 g( t5 i0 @不好意思,打扰了
发表于 2015-12-3 10:51:40 | 显示全部楼层 来自: 中国浙江嘉兴
NC@jiang@nan 发表于 2015-12-3 00:41/ w1 H) ?+ c( P* V  h
梁大,从回您上个帖后,一直在研究学习您的这个宏文件,到现在终于理解一二了。把提取文件的代号和名称写 ...
- s8 o% c0 y; ^' T
N大真用心呀,謝謝分享!
9 K$ S# [& _) t$ f看了,有空時可以再幫做簡化.
3 a) R- V6 q9 x" M8 h% `
发表于 2015-12-3 13:59:39 | 显示全部楼层 来自: 中国浙江嘉兴
本帖最后由 ryouss 于 2015-12-4 14:07 编辑
7 R  z% c' Z' p; k7 k6 ^# G5 }. S" k; d* B
12#的簡化參考6 _1 ?6 f& ?* M; J6 ?/ L( E
OpenFile_Configuration.rar (11.62 KB, 下载次数: 18)
 楼主| 发表于 2015-12-3 20:22:05 | 显示全部楼层 来自: 中国广东深圳
ryouss 发表于 2015-12-3 13:59
* C1 q, Y$ S! }! J! h12#的簡化參考
% M: {% c" j. \; o9 U9 a0 c SWP

" Q; u: M) ~# ?: _$ @谢谢梁大,
# f/ n) q& S) B3 _8 b这才完全是我想要的宏文件了。因为我觉得开启零件和开启装配体后,要在两段打开文件代码后分别执行一段完全一模一样的宏代码,这就不是那么合理的了,不仅是调试时比较烦琐,而且在下次万一有需要更改时,也容易漏改掉两段相同代码中的某一处。
  |( @, Q. Q& j$ d没系统的学过VB VC这些东西,脑子里有构想但不知道怎么用代码编出这个宏来,梁大是彻底的帮我解惑了,谢谢梁大。

点评

客氣了,幫到忙就好!  发表于 2015-12-3 20:40
发表于 2015-12-4 14:05:27 | 显示全部楼层 来自: 中国浙江嘉兴
15#編程如下補加紅色兩句,找到  "工程圖"  不做存檔關檔之處理.: i! X2 y- J, w/ F* R7 d: Y
; C5 S$ J  L" a" a; v8 F+ R
           Case "ASM"
: l9 t8 v) q% K3 t7 A4 Q2 K( L9 C  {& @& v                Set swModel =swApp.OpenDoc6(path + sFileName, swDocASSEMBLY, swOpenDocOptions_Silent,"", nErrors, nWarnings), `8 L3 q6 g" b4 t+ `
                Call Configuration_ '呼叫副程式
! u7 ~+ M$ D, \9 S       End Select
3 e1 {$ \$ M* t( H# K8 G       If Type_ <> "DRW" Then8 K4 P- }4 V. S, i. O
       swModel.Save '存檔
* g- |4 H; @3 J7 a       swApp.CloseDoc swModel.GetTitle '關檔
0 Z: X9 B# Y4 t5 J3 x9 [! V      End If
0 o: n* e) z+ e0 `, N' z       Set swModel = Nothing
7 p- y; p$ B" f+ u5 ^       sFileName = Dir '同路徑取出下個SW文件檔名3 P% o5 x& p6 C# D1 [$ o
   Loop: Q- ?5 h1 p# Y8 R" ~  ]( d
End Sub
 楼主| 发表于 2015-12-4 21:49:11 | 显示全部楼层 来自: 中国广东深圳
ryouss 发表于 2015-12-4 14:054 u4 k! e) q& ^5 W  z: o
15#編程如下補加紅色兩句,找到  "工程圖"  不做存檔關檔之處理., F8 h- M: ]- p; K1 f; M

4 }7 F: I+ F" ]# a           Case "ASM"

1 s, M! |/ L/ s梁大,可是原来的宏代码应该本身就没有开启工程图文档呀,为什么后面要再加上这一句辨别是非工程图时存档减档的代码呢?
发表于 2015-12-4 23:16:20 | 显示全部楼层 来自: 中国浙江嘉兴
難道你的文件里不存在工程圖嗎?
! X- z, Q4 o' x. l- x5 c7 O" X' _若是的話當然執行沒問題,
: Z  z. ~8 @6 j, F有的話,見15#,就是沒開出工程圖,但跑到第 51項 會存檔造成矛盾而出錯的
" f8 f  j( I" t; k7 ~9 ~
 楼主| 发表于 2015-12-5 20:31:02 | 显示全部楼层 来自: 中国广东深圳
ryouss 发表于 2015-12-4 23:16
7 M$ |" D" [2 ]8 {7 C- C! x難道你的文件里不存在工程圖嗎?
+ V8 [2 }* f& J7 _% _若是的話當然執行沒問題,
& q. L+ x6 {& N: [% a) z+ A有的話,見15#,就是沒開出工程圖,但跑到第 51項  ...

# l6 b7 C0 R) e哦哦。
  l. |" w( t) k; G- V4 a4 D( Q我试验的时候那个文件夹里没放工程图。现在试下。谢谢梁大。

点评

哈! 跟我剛試用時一樣,所以沒發現問題!  发表于 2015-12-5 20:59
 楼主| 发表于 2015-12-5 21:35:18 | 显示全部楼层 来自: 中国广东深圳
ryouss 发表于 2015-12-4 23:16
9 g& q' d7 m) i: |7 ?2 D0 ~* Z難道你的文件里不存在工程圖嗎?' P8 O6 E- F' y+ u
若是的話當然執行沒問題,
# g/ ], s/ L* g有的話,見15#,就是沒開出工程圖,但跑到第 51項  ...

0 v. H/ ?! J! Q, f" ^% m梁大,研究学习了一会,果然如您所言。0 D2 h( `5 Y. `" |
看来做宏这个东西,果然还是需要逻辑推理能力好的人才行,我就只能跟在后面慢慢学习了。
+ y$ k4 A% O7 g$ b5 d7 H* o谢谢梁大。

点评

互相學習了  发表于 2015-12-5 21:48
发表于 2015-12-5 21:48:10 | 显示全部楼层 来自: 中国山东莱芜
梁大,求助,sw2016 提示出错,如何解决
/ V7 n# C7 n+ ]/ S! O
捕获.PNG
 楼主| 发表于 2015-12-5 21:52:18 | 显示全部楼层 来自: 中国广东深圳
luanguangtao 发表于 2015-12-5 21:48
- G4 p1 v' |. D% F- ]% @梁大,求助,sw2016 提示出错,如何解决

9 T/ D$ K  }0 ~; k; ~你在2016里更改了引用库没有?SW各个版本的工程库文件都不一样的
 楼主| 发表于 2015-12-5 21:54:16 | 显示全部楼层 来自: 中国广东深圳
luanguangtao 发表于 2015-12-5 21:48
  D1 s6 x& [; I- h% u" K, i梁大,求助,sw2016 提示出错,如何解决
% b. j) ?" z% Y9 l  Z
需要编辑宏,在VBA编辑界面下的“工具”菜单里点选“引用”,选你要用的运行库的版本。
发表于 2015-12-5 22:37:38 | 显示全部楼层 来自: 中国山东莱芜
但不知要选哪几项
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则


Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

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