QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

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

[求助] 求梁大帮助指点

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

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

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

x
梁大,我现在研究SW批处理宏,想让运行宏时自动批量打开某一个文件夹下的零件和装配体文件,门外汉不知道完成这个功能的这句语句的代码应该怎么写?请求梁大指点下。谢谢。
( X* [  u) E. S' B% }9 c, Q+ W. y" v
 楼主| 发表于 2015-12-1 11:46:56 | 显示全部楼层 来自: 中国广东广州
@ryouss  梁大,求指点
发表于 2015-12-1 15:01:36 | 显示全部楼层 来自: 中国浙江嘉兴
NC@jiang@nan 发表于 2015-12-1 11:46
0 A, X0 j/ l$ D@ryouss  梁大,求指点
& H5 D9 T8 `, h
指點不敢,相互研習就是/ N- k# V/ |5 w$ d& I& m/ i

- U* K) ]8 R& i9 L9 g' _) O如下試試, inputbox 之對話表輸入文件路徑  如 C:\TEST\     注意兩個  " \ " 符號
  ~$ K7 p+ y0 n& D& X/ I 1.jpg
! z" S! _  n6 F$ m; B7 Z  I1 k1 r1 M$ ]8 k( e+ F8 c) |

% g6 ?, W/ i+ s OpenFile part_asm.rar (10.23 KB, 下载次数: 39)
 楼主| 发表于 2015-12-1 16:31:22 | 显示全部楼层 来自: 中国广东广州
ryouss 发表于 2015-12-1 15:01
' @* B, w5 Y9 [8 _" N$ V9 V, S! h指點不敢,相互研習就是
7 X/ W; Q8 a1 z3 T4 Z
0 l5 B6 S( [0 u6 v' V, A, _! `# z( O如下試試, inputbox 之對話表輸入文件路徑  如  C:\TEST\     注意兩個  " \ " ...

+ g4 T2 r9 _6 W, d+ d4 t谢谢梁大。. s$ H( K3 w( L- p5 s3 F" ]4 f
我原来这样做的。我以为有可以在同一个语句里同时设定打开零件和装配体的办法,看来还是只能用这种先处理零件然后再处理组件的方式了。0 f$ ]$ Y8 O" h! U1 C5 b6 b
谢谢梁大指点。
发表于 2015-12-1 20:41:22 | 显示全部楼层 来自: 中国浙江嘉兴
本帖最后由 ryouss 于 2015-12-2 08:58 编辑
' c5 W) ^  [4 d: v( x( I
NC@jiang@nan 发表于 2015-12-1 16:310 _; u! D! |+ E4 M$ _9 v
谢谢梁大。2 v8 e8 n+ _, T' a5 v7 I
我原来这样做的。我以为有可以在同一个语句里同时设定打开零件和装配体的办法,看来还是只能 ...
% q+ D" j! \6 t, |; n& S7 k
指令是死的,編程是活的,
& h2 I+ {0 u4 U) A4 n8 n! O/ S所以編程的寫法林林總總形形色色,
' P8 O+ S) D* o/ K9 h6 F$ f1 r若是小編程尚不需計較寫法,能達結果就好," V6 y5 J1 r4 O9 k
大編程就要考慮許多如執行效率日後維修及易用性擴展性...; t, [) D! g' t1 p6 Q1 c8 H
, i$ A2 R2 A% Q
! t* e' [4 g" n" ~
如下是另個寫法做參考,邏輯來說應該是會比2#效率好(若是開檔不多也是看不出),; Q' r- x: B; r2 R
因只是在開檔文件路徑搜找一遍即可,2#是要搜找兩遍.
! w' m4 i0 R% ?# m* U. M9 n! I, r: h
4.png * D5 h9 @1 X9 }$ @
3 Z: J+ R1 M; X7 `
* S5 ?5 I+ A/ w8 Q
OpenFile Part_Aam_1.rar (9.2 KB, 下载次数: 16)

评分

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

查看全部评分

 楼主| 发表于 2015-12-1 22:11:49 | 显示全部楼层 来自: 中国广东深圳
ryouss 发表于 2015-12-1 20:41$ c  k9 ^  }; b; y3 L" H) u
指令是死的,編程是活的,2 R: x( j! _& x) Q% v' G
所以編程的寫法林林總總形形色色,0 V7 N% q) J$ {* w+ w' d! O
若是小編程尚不需計較寫法,能達結果就好,
9 z1 |" x/ T; f
是的,我原来想的就是这样,在路径下找一遍,碰到装配体时就打开装配体,碰到零件文件就打开零件文件,整个目录下只搜寻一遍。5 Y& l1 ~/ t( A* z: l, E/ d; e
谢谢梁大指点,下载研究了。
发表于 2015-12-2 09:39:06 | 显示全部楼层 来自: 中国浙江嘉兴
如下是SW API 有關開檔的原文資料作參考
! W7 b! P/ L8 K: B, I, f
9 ]8 g2 e9 B6 Z5 }& M9 Y$ |1 U$ ]Select All in Part, Assembly, or Drawing (VBA)6 a7 {/ A+ F* Z1 w9 T

0 H) x+ V" i0 F$ i/ m7 R/ PThis 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.( q: y' P6 S8 f. ]0 P! \
' ******************************************************************************
6 E2 E. O0 v; P  f1 ^. H- Q& e4 P' Preconditions:
% y4 k, Z% ~1 M) s5 Q) Y$ i* y* J; `' 1. Part, assembly, and drawing documents opened by the macro
' N% H, @9 l+ V$ ^4 i! \, |0 c# S0 ^'    exist.
% ]& C1 T; U: a. m" W$ u- u' 2. Open the Immediate window.
! ]) C4 a( E+ D! b'1 N6 t9 _# s+ }7 h# \" _
' Postconditions:
; [! z2 u( o9 P/ [' z; j7 F% m' 1. Examine:! J  u; y; f1 V
'    * Sheet to verify that all of the entities in the drawing
0 g3 C) ~% s1 P% w! D'      are selected./ n. A- u1 I" z9 T
'    * Immediate window to see how many entities are selected.  S+ w/ `9 D( W- v
' 2. Click Window > bolt-assembly.sldasm to switch to the assembly
; C; T/ ^7 T0 S! x" R, l'    document.
. x" u' G( b/ W8 F4 l! n* l' 3. Examine:- A' X1 P' A& u
'    * Graphics area to verify that the all of the components7 `. @; |! `0 Y6 Q: ?
'      in the assembly are selected.
1 b( J7 A% H7 U0 j7 @; f. a5 @'    * Immediate window to see how many components are selected.- ^3 h) }% y% f# J- [
' 4. Click Window > bolt.sldprt to switch to the part document.' v. `# K8 f7 ^$ w  o. y$ N  ~
' 5. Examine:7 e) o- |# |% E# G; v& Y  S8 W
'    * Graphics area to verify that the all of the edges
. l( s" b# V7 L$ x* w'      in the part are selected.  |2 V+ Y5 G/ T. k/ n
'    * Immediate window to see how many edges are selected.% V: y% q! m/ Y5 y
'; [- v( H0 {3 l" R+ U& Y5 t
' NOTE: Because these documents are used elsewhere, do not save any
* `8 s& @  a0 m! Y1 j0 [' changes when closing them.6 Y6 u# R% v& s$ Y5 j
' ******************************************************************************2 N' O/ C9 b1 Z1 D& z9 N* Q  S
Option Explicit
/ L# W  X# a+ {0 _1 N( YDim swApp As SldWorks.SldWorks, _- D& G. R/ L
Dim swModel As SldWorks.ModelDoc2
+ ]$ P: B; @0 M- VDim swModelDocExt As SldWorks.ModelDocExtension( g- b! i8 v/ p" @# W3 F6 h+ D
Dim swSelMgr As SldWorks.SelectionMgr% h' h( O/ {4 n# Y; B, [
Dim partFile As String0 n9 |# S" m2 \. {
Dim assemblyFile As String
; H9 q- h1 i2 \6 d8 I- R; BDim drawingFile As String
+ K: w" n( q6 c3 {Dim errors As Long
% P, {' \4 g  h4 X  K* eDim warnings As Long9 z, o$ E' h& {1 _3 W
Dim selCount As Integer& [2 d2 \$ Q- f0 N! g- S
Sub main()  Q# W' U& r: c
    Set swApp = Application.SldWorks/ u1 g2 B6 f  {
    . V6 W! B( B6 U9 f
    ' Open a part document and select all edges in the part
( }4 [) H9 v4 i  x9 ^7 ]    partFile = "C:\Program Files\SolidWorks Corp\SolidWorks\samples\introsw\bolt.sldprt"+ L: g$ E, i: N! z7 R$ U
    Set swModel = swApp.OpenDoc6(partFile, swDocPART, swOpenDocOptions_Silent, "", errors, warnings)
9 X0 C$ j& ~& d  Q) z    Set swModelDocExt = swModel.Extension
. v5 v# W% v8 W" U# Q$ e# ^3 ]    Set swSelMgr = swModel.SelectionManager* w7 e' l3 }4 j4 i$ W
    'Select all edges in part
" w) K/ U  j) v3 b  L7 f    SelectAllinDocument1 p% t/ B7 P9 |
    % Y4 c4 M, U- t/ V1 M1 h! I
    ' Open an assembly document and select all components in the assembly
% J8 t2 `, f0 _+ k' V" z    assemblyFile = "C:\Program Files\SolidWorks Corp\SolidWorks\samples\introsw\bolt-assembly.sldasm"2 W0 [9 `$ y* N
    Set swModel = swApp.OpenDoc6(assemblyFile, swDocASSEMBLY, swOpenDocOptions_Silent, "", errors, warnings)6 K( c1 C! t( ~4 s9 W+ _6 W/ v
    Set swModelDocExt = swModel.Extension
/ E9 d* K+ }& p$ n6 m3 i+ g+ W4 b    Set swSelMgr = swModel.SelectionManager
5 n; i, Y- d6 w    'Select all components in assembly' Z, |+ b. N5 [3 i" c
    SelectAllinDocument. v! Q& {' N! \8 E3 U% f. I. J
    " ?( V3 V2 [" w: v, J9 {
    ' Open a drawing document and select all entities in the drawing9 M- @6 N7 T& O4 `
    drawingFile = "C:\Program Files\SolidWorks Corp\SolidWorks\samples\introsw\bolt-assembly.slddrw"
! o* A( A+ d; @2 \0 [2 v/ H" ], X    Set swModel = swApp.OpenDoc6(drawingFile, swDocDRAWING, swOpenDocOptions_Silent, "", errors, warnings)! ]5 c2 U$ [$ w2 v' P& D$ M
    Set swModelDocExt = swModel.Extension
: D0 s7 Y, w4 n, Z& k    Set swSelMgr = swModel.SelectionManager' f9 m+ K4 o3 ~
    'Select all entities in drawing
7 C' C6 c6 s5 g  K    SelectAllinDocument4 C! E7 M" i* W3 O# P/ v
   
/ N( ?$ ]! S! v1 J9 i4 iEnd Sub' b7 e) W4 C/ }' i; M# ~8 Z7 B
Sub SelectAllinDocument()
$ G' ^; g3 e# u- r1 ?0 q. `, N    ' Select all edges in a part, all components in an assembly,
7 y& [+ Y4 }/ ?4 {    ' or all entities in a drawing
1 u$ b: H* F* C+ _. f" s- p1 z     swModelDocExt.SelectAll   
- `; U8 H8 Z& a. Z" _2 s$ v    ' Get and print the number of selections. K: w0 I" h: k5 F/ h
    selCount = 0
8 `+ s7 B* c1 E4 K    selCount = swSelMgr.GetSelectedObjectCount2(-1)    0 y! y  I$ \/ f' O" Y# z
    Select Case swModel.GetType' _  q! D$ U. u+ t2 l9 j3 p
    Case swDocPART
; ?' W" f: |) ?8 R2 B" Y8 W        Debug.Print "Number of edges selected in part          = " & selCount& N, r6 L" K9 x: u$ `
    Case swDocASSEMBLY
: j* ~- v+ w+ B: d        Debug.Print "Number of components selected in assembly = " & selCount
1 z% \6 E* y1 e: x    Case swDocDRAWING1 ?0 h- o: R+ f( C
        Debug.Print "Number of entities selected in drawing    = " & selCount) o8 k* f1 [" p7 T( p, D# u- n& [
    Case Else+ e+ n3 c  p# Y3 W
        Debug.Print "Unknown type of document."
# Y/ l, ~- {. V+ d5 P4 n- Z    End Select
/ N  p* z8 f7 \$ {3 ]% C   
  m' Y6 y5 {& _: g6 n0 [/ hEnd Sub3 D0 N' M4 ~3 _* ~0 m. m$ L
 楼主| 发表于 2015-12-2 20:41:01 | 显示全部楼层 来自: 中国广东深圳
ryouss 发表于 2015-12-2 09:39
: w! G0 V% H2 K. Q, |如下是SW API 有關開檔的原文資料作參考
7 H8 z) X4 r' L( B0 U' Q  N8 f; r6 @
Select All in Part, Assembly, or Drawing (VBA)

7 `! t6 S; d6 gAPI帮助是英文版的,想搜索都不知道用什么关键词,梁大见笑啦。
" Y4 n* v# R" u2 _/ R另,您昨天发的那个宏文件,因为我水平太差昨天晚上看了想了很久,应用应该还是能够瞎应用上了,但是还是没理解透彻,第一点就是不知道这宏(或者是所有的打开SW文档的宏)的原理是不是先把某个目录下的文件调入内存,然后去分析它的后缀名,后缀名最后三位符合您这宏文件里设定的"prt"或者"asm"时才正式在SW软件里打开文件?第二点就是,您的这个宏代码并没有指定当后缀名后三位是DRW时怎么处理,是不是后缀名后三位是DRW时SW默认不会打开这个文件而是只有在后三位符号宏文件里设定的“prt"或者"asm"时才会打开文件进行处理?+ Q4 U9 _% B- q# m/ H
因为家里的电脑配置真的有点烂了,09年时买的电脑,平时用得很少,一直没升级,跑现在的版本的SW太卡,有的内容试过了,有的还没尝试试验,有啥常识性的错误请梁大谅解。明天把您这宏文件拷到公司去试验研究一天,谢谢梁大了。
发表于 2015-12-2 22:43:37 | 显示全部楼层 来自: 中国浙江嘉兴
13993359550 发表于 2015-12-2 22:107 v0 W* b/ d' S
梁大,有个问题一直想请教,不知道,您老愿意讲一下不,就这两个苦思不得其解,谢谢您了
# n" _* n3 T& v1 U" A
怎麼發在這裡呢!太不尊重樓主了[/color]
发表于 2015-12-2 22:50:59 | 显示全部楼层 来自: 中国浙江嘉兴
NC@jiang@nan 发表于 2015-12-2 20:418 P! V; P% Q+ U2 q- o4 C2 I
API帮助是英文版的,想搜索都不知道用什么关键词,梁大见笑啦。+ D( D6 {. n3 Z6 j. N
另,您昨天发的那个宏文件,因为我水平 ...

2 G' z: C, |5 I5 F Select Case Type_
, d. k/ d8 l5 O6 a$ N'開零件檔6 I6 m+ C- S5 y" a4 j8 L
            Case "PRT"! D+ a1 @, X7 L+ S, H6 y
                Set swModel = swApp.OpenDoc6(path + sFileName, swDocPART, swOpenDocOptions_Silent, "", nErrors, nWarnings) '開零件檔
& Y7 N+ g+ |' W1 V7 H  n& G* d'開組件檔
3 P$ F+ L+ d' L2 K# a+ ~            Case "ASM": O# u9 O, u$ s5 l
                Set swModel = swApp.OpenDoc6(path + sFileName, swDocASSEMBLY, swOpenDocOptions_Silent, "", nErrors, nWarnings) '開組件檔
4 t! t9 N  d$ V8 q* r        End Select$ J2 V* o' p9 t( @$ }
: Z4 k. L/ ?; a( A- G9 ^* B5 M
; G, e& T0 D3 F  M# S  A8 }
是如上語句把工程圖篩選掉
发表于 2015-12-2 22:51:03 | 显示全部楼层 来自: 中国浙江嘉兴
本帖最后由 ryouss 于 2015-12-2 23:37 编辑
- M% R' P' [, }+ ^, @, X3 R: b
NC@jiang@nan 发表于 2015-12-2 20:41
- `6 c" X8 A9 w0 |& s# R& a9 FAPI帮助是英文版的,想搜索都不知道用什么关键词,梁大见笑啦。
, w5 ^2 _  x" Y4 F5 z另,您昨天发的那个宏文件,因为我水平 ...
  1.     Select Case Type_
    * S0 q9 ~5 h( Q5 P# H: v( q
  2.     '開零件檔
    0 N5 A2 Q* _5 U; H! b; X
  3.    Case "PRT"
    2 l6 o6 K( O0 _' H) m5 p4 I9 I  u
  4.    Set swModel = swApp.OpenDoc6(path + sFileName, swDocPART, swOpenDocOptions_Silent, "", nErrors, nWarnings) '開零件檔
    ( N* p$ L" T7 t! s; K5 ]6 m6 v
  5.    '開組件檔* N2 q" K1 V$ v3 A( ?
  6.    Case "ASM"8 G: i: h2 j! F  N  g3 W5 J& T
  7.    Set swModel = swApp.OpenDoc6(path + sFileName, swDocASSEMBLY, swOpenDocOptions_Silent, "", nErrors, nWarnings) '開組件檔" O2 `: [& W, k
  8.    End Select5 w  y; Y# P; }9 A
复制代码
5 l  n; M6 l$ @) {

" N3 R* c, \4 t3 F8 X2 L, `
4 N( O+ d" i. \+ S5 l% \0 L2 X2 ]- Z1. 是如上語句把工程圖篩選掉當第1項的  Type_ 取得是 工程圖  DRW  就跳出第8項.
5 |1 m. N* J: q  g& R# u- }( k
    若是 Type_ 取得是 零件  PRT  就跳到第4項,執行  Set swModel = swApp.OpenDoc6(path + sFileName, swDocPART, swOpenDocOptions_Silent, "", nErrors, nWarnings) '開零件檔   
( L# a; n! F% j% G# R. @8 b    再跳到第8項,結束選擇循環.' E; A$ Y& h6 x7 p& N+ h- e
4 @$ A  ?0 H2 ]2 K9 K
Select Case Type_8 F: a9 v/ F$ X) @" X2 r4 W* ~
           .
+ A2 v1 t5 f/ ]          執行內容
/ ?5 f7 f1 q5 h           .
+ w4 Y  {! @1 q0 A6 eEnd Select
+ T5 U" \/ {0 p* ~
  E* Y" s9 `) z' X# E& }+ d. _% S
如上是個選擇循環2 j1 W* n2 }: v' ~* D$ U* J; i
1 K5 @) L; N9 }  B& m( t$ \
2 p% w" t. t9 W7 v
4 g  \" e8 ^, T1 o6 m/ ~
2. 查有關開檔的關鍵語是   OpenDoc6
+ H% G+ F4 o1 L8 [8 w8 _* ?
  h% E* G4 q0 _7 u6 c6 ~  ?: P9 G6 C# q( U$ t
5 J" O4 r- c* C$ O
 楼主| 发表于 2015-12-3 00:41:07 | 显示全部楼层 来自: 中国广东深圳
本帖最后由 NC@jiang@nan 于 2015-12-3 01:15 编辑
6 `3 x0 s6 Q+ ]7 C6 O% S* m
ryouss 发表于 2015-12-2 22:503 N# j: e  A' V, U4 a/ \
Select Case Type_
6 S: L3 A  Z( J6 q'開零件檔. h$ V8 d: o& q8 P$ I
            Case "PRT"
. t8 y  q. F* L
梁大,从回您上个帖后,一直在研究学习您的这个宏文件,到现在终于理解一二了。把提取文件的代号和名称写入配置特定属性栏的宏集成进去了。谢谢梁大指点了。( q; \. Z0 U5 r/ C

# t+ n0 v3 O3 l' z! O附上集成批量提取文件名中的代号和名称的宏文件,一方面请梁大有空时看看再指点指点哪里可以进一步改进,另一方面给有可能需要的朋友下载研究改进与使用。1 b" b) h) H9 ]

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

17.07 KB, 下载次数: 28

发表于 2015-12-3 09:27:37 | 显示全部楼层 来自: 中国上海
ryouss 发表于 2015-12-2 22:43/ c4 }) F! Q/ v# {5 V
怎麼發在這裡呢!太不尊重樓主了

% V7 ~3 i, l. F5 }6 d+ G, n不好意思,打扰了
发表于 2015-12-3 10:51:40 | 显示全部楼层 来自: 中国浙江嘉兴
NC@jiang@nan 发表于 2015-12-3 00:41! d" a5 k) _4 u0 g& l
梁大,从回您上个帖后,一直在研究学习您的这个宏文件,到现在终于理解一二了。把提取文件的代号和名称写 ...
" {: e8 E, j, q+ v) l0 A: j: P
N大真用心呀,謝謝分享!
! v8 H) W* y% k( [" P( c看了,有空時可以再幫做簡化.
' S0 I4 W  ?0 B, O0 S! R
发表于 2015-12-3 13:59:39 | 显示全部楼层 来自: 中国浙江嘉兴
本帖最后由 ryouss 于 2015-12-4 14:07 编辑
/ X1 s& Q- y" U$ j5 _* m4 f/ c" W
( _* g1 r# W% w! w. l) j12#的簡化參考* \0 V# U) h8 _7 m$ ]* C" p9 U" R
OpenFile_Configuration.rar (11.62 KB, 下载次数: 18)
 楼主| 发表于 2015-12-3 20:22:05 | 显示全部楼层 来自: 中国广东深圳
ryouss 发表于 2015-12-3 13:59
) h' E1 `2 c9 j2 [/ ~2 w: n12#的簡化參考
" z8 |0 ^, Q9 o$ U( i! O' ~ SWP
; C/ S* |0 `2 x( X' Z: g4 c
谢谢梁大,
- r2 y7 `; H! @+ W1 c这才完全是我想要的宏文件了。因为我觉得开启零件和开启装配体后,要在两段打开文件代码后分别执行一段完全一模一样的宏代码,这就不是那么合理的了,不仅是调试时比较烦琐,而且在下次万一有需要更改时,也容易漏改掉两段相同代码中的某一处。. |* [7 A  T$ ^  e! ^2 |; T/ j  k
没系统的学过VB VC这些东西,脑子里有构想但不知道怎么用代码编出这个宏来,梁大是彻底的帮我解惑了,谢谢梁大。

点评

客氣了,幫到忙就好!  发表于 2015-12-3 20:40
发表于 2015-12-4 14:05:27 | 显示全部楼层 来自: 中国浙江嘉兴
15#編程如下補加紅色兩句,找到  "工程圖"  不做存檔關檔之處理.
  r  @* R& H% }2 U% b% Y2 m. i0 e/ s/ o) s9 F5 x# p* i' j& s+ X
           Case "ASM"
. W8 _/ s* U& d                Set swModel =swApp.OpenDoc6(path + sFileName, swDocASSEMBLY, swOpenDocOptions_Silent,"", nErrors, nWarnings)2 {; }% j7 c3 c, G6 @
                Call Configuration_ '呼叫副程式
  ]9 J7 |$ x  V  V- f       End Select" J& w7 u- B# |7 A) {
       If Type_ <> "DRW" Then
. L+ g5 K, K0 l1 t+ D/ {       swModel.Save '存檔
1 l; P0 V4 j. d- X       swApp.CloseDoc swModel.GetTitle '關檔
4 J0 I3 L( O8 @2 ]' U" [; T5 i- h      End If. t  B2 {6 F* D0 @' |0 w
       Set swModel = Nothing6 R0 ~# d2 `2 L. U* b' y
       sFileName = Dir '同路徑取出下個SW文件檔名
" l+ |% U# O2 \1 x* K2 v5 Y; o   Loop
7 r0 q) ]! N% o; nEnd Sub
 楼主| 发表于 2015-12-4 21:49:11 | 显示全部楼层 来自: 中国广东深圳
ryouss 发表于 2015-12-4 14:05
- X' [+ [: ]4 @" [) p+ [: \15#編程如下補加紅色兩句,找到  "工程圖"  不做存檔關檔之處理.6 a8 {8 h+ }% p, p: x2 |
, w' |+ A; m% `+ [6 \8 _
           Case "ASM"

2 H5 Y9 j1 R$ R  {6 M. n梁大,可是原来的宏代码应该本身就没有开启工程图文档呀,为什么后面要再加上这一句辨别是非工程图时存档减档的代码呢?
发表于 2015-12-4 23:16:20 | 显示全部楼层 来自: 中国浙江嘉兴
難道你的文件里不存在工程圖嗎?
, Y! C* V  f6 l- X: q. K若是的話當然執行沒問題,0 }) N* M# O5 H, m0 I, |
有的話,見15#,就是沒開出工程圖,但跑到第 51項 會存檔造成矛盾而出錯的+ Q1 L. p1 d0 d% i
 楼主| 发表于 2015-12-5 20:31:02 | 显示全部楼层 来自: 中国广东深圳
ryouss 发表于 2015-12-4 23:16
; C8 n$ O- \) F- d, c難道你的文件里不存在工程圖嗎?
* F2 i# ]. v/ l+ S9 {若是的話當然執行沒問題,) l2 V  F- e$ E- E
有的話,見15#,就是沒開出工程圖,但跑到第 51項  ...
& r8 N. W  [7 g2 x  f+ u
哦哦。
$ T- Y5 t- B3 l& w, H; h" e9 l1 O8 f' `我试验的时候那个文件夹里没放工程图。现在试下。谢谢梁大。

点评

哈! 跟我剛試用時一樣,所以沒發現問題!  发表于 2015-12-5 20:59
 楼主| 发表于 2015-12-5 21:35:18 | 显示全部楼层 来自: 中国广东深圳
ryouss 发表于 2015-12-4 23:16! W6 I# N$ D4 U) P4 _' R+ j
難道你的文件里不存在工程圖嗎?* ]( J! x5 N- K/ r5 A
若是的話當然執行沒問題,
% R) |- j- u* E( w8 V有的話,見15#,就是沒開出工程圖,但跑到第 51項  ...

  \) `1 b% H1 k8 m; g# [梁大,研究学习了一会,果然如您所言。
% c7 F) z1 d  P: X' A看来做宏这个东西,果然还是需要逻辑推理能力好的人才行,我就只能跟在后面慢慢学习了。0 H. c2 w! o8 Q) Z9 b  L- R# f5 |
谢谢梁大。

点评

互相學習了  发表于 2015-12-5 21:48
发表于 2015-12-5 21:48:10 | 显示全部楼层 来自: 中国山东莱芜
梁大,求助,sw2016 提示出错,如何解决+ L" L  e9 B5 ]" A
捕获.PNG
 楼主| 发表于 2015-12-5 21:52:18 | 显示全部楼层 来自: 中国广东深圳
luanguangtao 发表于 2015-12-5 21:48
+ t8 N& o. _' C) U; v6 |/ \6 a梁大,求助,sw2016 提示出错,如何解决
+ b6 ]7 P: S/ d( p
你在2016里更改了引用库没有?SW各个版本的工程库文件都不一样的
 楼主| 发表于 2015-12-5 21:54:16 | 显示全部楼层 来自: 中国广东深圳
luanguangtao 发表于 2015-12-5 21:48/ @4 y- _3 y' K6 |  [9 J9 q
梁大,求助,sw2016 提示出错,如何解决
$ d% _# m+ |! d8 n# Y4 {6 [1 c
需要编辑宏,在VBA编辑界面下的“工具”菜单里点选“引用”,选你要用的运行库的版本。
发表于 2015-12-5 22:37:38 | 显示全部楼层 来自: 中国山东莱芜
但不知要选哪几项
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则


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

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

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