|
本帖最后由 zqzwhj111 于 2020-4-12 11:38 编辑
7 Z0 K* v- A% ]' n& [" k: M6 E- L* B5 l, y
有大佬知道这个程序哪里出问题了吗,替换不了,用visual studio写的,VB语言,SolidWorks版本是2012的# a3 \* a- }0 p4 @
* y1 M( q& I9 D' t) F, w- EPrivate Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
8 g, @6 p* t7 q8 e1 @ Dim swapp As SldWorks.SldWorks
0 G+ k$ a/ J' C9 v2 C+ P$ z Dim modle As SldWorks.ModelDoc24 x% b6 `: I; v/ G0 P- m
Dim sheet As SldWorks.Sheet/ H$ o$ J. ^: F7 a
Dim sheetpr() As Double/ E5 [) G* t: p: m/ n: _3 l! Z
swapp = CreateObject("Sldworks.application")
9 q; G& u8 X1 A$ U9 L" y& L7 x' T: E. d D% {) Z, M
Dim pathname As String
8 i2 W% X; a E9 m P. Z$ V$ {5 n& D pathname = TextBox1.Text '获得文件夹路径
; g" d6 H0 b# A# W N7 T( H7 B Dim swpath() As String5 Q6 A1 P0 ~) B' }0 U/ q
swpath = IO.Directory.GetFiles(pathname, "*.SLDDRW") '筛选图纸文件名9 F7 n3 z: V' z, w# n% J) l6 V
For Each strname As String In swpath '列出所有图纸文件名3 `4 a( K3 R/ K; F1 l/ g3 G1 G: ]
modle = swapp.OpenDoc(strname, 3) '打开模型! b- [7 p4 I4 [ J) i" T
sheet = modle.GetCurrentSheet() '获得当前图纸+ x/ L+ `9 P0 B+ v3 P: U
sheetpr = sheet.GetProperties() '获得图纸属性
5 S- ?! C% {; y; U0 I _ sheetpr(1) = 125 F$ _0 |! c" s2 W' e K6 P
sheetpr(1) = 120 r4 |/ q. \# Z; R
sheet.SetProperties(sheetpr(0), sheetpr(1), sheetpr(2), sheetpr(3), sheetpr(4), sheetpr(5), sheetpr(6))# B( x3 h M0 E% r
If sheetpr(5) = 210 / 1000 Then
+ [, I! b7 x, i; N: j7 W0 p ~ sheet.SetTemplateName("E:\图纸格式文件替换工程图模板时使用\A4替换.slddrt")# w( p) x, ~( c8 d( S
ElseIf sheetpr(5) = 420 / 1000 Then+ q( |8 h3 p& z
sheet.SetTemplateName("E:\图纸格式文件替换工程图模板时使用\A3替换.slddrt")
% F2 X Q- I( T' |9 k2 K End If
& _& k" d8 f e; d modle.Save3(1, swerrors, swwarings)5 n0 b% T9 q7 f' J
swapp.CloseDoc(strname.Substring(InStrRev(strname, "\"), Len(strname) - InStrRev(strname, "\")))
& z m3 v+ [$ v" [7 F" `/ G- ^ Next
5 y, X4 |& E+ ]$ q) ZEnd Sub& \: S7 x- l5 q, L) A
6 g, s9 X$ I7 [! g8 l* V3 t% |9 |
|
|