找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 6666|回复: 5

批量替换工程图模板程序问题

[复制链接]
发表于 2020-4-12 11:34:02 | 显示全部楼层 |阅读模式
本帖最后由 zqzwhj111 于 2020-4-12 11:38 编辑
4 i8 ~0 C( c- ]  N, a  c5 [
, g# G& p; E0 H  `' h 有大佬知道这个程序哪里出问题了吗,替换不了,用visual studio写的,VB语言,SolidWorks版本是2012的/ Y" t( o- ]+ G$ g! ?6 I

4 {8 k5 v6 d: H/ kPrivate Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
! E9 X. g& B) K7 e0 w# t7 o/ Q2 w        Dim swapp As SldWorks.SldWorks5 K5 Z1 t/ Q3 R2 [
        Dim modle As SldWorks.ModelDoc26 U2 T' X, c- g" y8 _. ?
        Dim sheet As SldWorks.Sheet
! ~; X7 B6 `. W        Dim sheetpr() As Double: Q4 ~0 H) _, E$ ^0 A3 s% V
        swapp = CreateObject("Sldworks.application"); O4 l- H1 A* H% q; X$ E- K. Y

" e5 D7 `1 g- O) V* t        Dim pathname As String# W# a; f5 K5 R1 n
        pathname = TextBox1.Text         '获得文件夹路径
$ Z4 _4 l8 V1 q# u6 N$ P; @        Dim swpath() As String4 T4 B: h6 |4 Y; m" x/ R
        swpath = IO.Directory.GetFiles(pathname, "*.SLDDRW")        '筛选图纸文件名6 L7 G- H- e# ?9 V6 \( L* Z& n2 h
        For Each strname As String In swpath       '列出所有图纸文件名
+ _# ]9 A" Q6 |$ z3 O1 d; o0 I4 T( Z            modle = swapp.OpenDoc(strname, 3)      '打开模型
$ @. \+ E0 g5 k& G+ i            sheet = modle.GetCurrentSheet()         '获得当前图纸
3 a  v. b' H6 [  A  }$ t            sheetpr = sheet.GetProperties()        '获得图纸属性
0 n; v8 O8 y6 z            sheetpr(1) = 122 C5 o+ Q% m' U
            sheetpr(1) = 12
% e4 ~7 K5 c1 Q- e% o            sheet.SetProperties(sheetpr(0), sheetpr(1), sheetpr(2), sheetpr(3), sheetpr(4), sheetpr(5), sheetpr(6))
' k% p- v  g" n( M9 }* n            If sheetpr(5) = 210 / 1000 Then1 ]7 z! p) j8 ^1 {1 n2 V
                sheet.SetTemplateName("E:\图纸格式文件替换工程图模板时使用\A4替换.slddrt")! z( N4 N- Y# j5 G  O- b8 l+ T
            ElseIf sheetpr(5) = 420 / 1000 Then
5 d% f3 Q9 K' ?+ U1 W                sheet.SetTemplateName("E:\图纸格式文件替换工程图模板时使用\A3替换.slddrt")
1 }3 ^; M4 a  }+ s- q% O            End If
( `4 U, [0 E" K# p            modle.Save3(1, swerrors, swwarings)' X/ p  _" z4 T) @* X
            swapp.CloseDoc(strname.Substring(InStrRev(strname, "\"), Len(strname) - InStrRev(strname, "\")))
* ]+ i- n7 S/ T; a( i  N  d" X        Next3 ], M# C% X" A, ~) B) P0 f
End Sub
$ T8 |2 x$ [! w2 ]& {1 b
  Y3 [9 F# e% w5 C, e1 X
回复

使用道具 举报

发表于 2020-4-12 11:38:36 | 显示全部楼层
有试过把程序里面的路径和模板改为英文的吗
 楼主| 发表于 2020-4-12 11:39:11 | 显示全部楼层
gaxisjtu 发表于 2020-4-12 11:38) F8 d. y6 `4 m' ~/ k' M
有试过把程序里面的路径和模板改为英文的吗

/ Z2 Y' F4 ?; U5 t/ H5 r1 N我试试
  u; X4 o2 O7 M( N  s2 o. E/ {3 I% {  k6 B
 楼主| 发表于 2020-4-12 11:41:56 | 显示全部楼层
gaxisjtu 发表于 2020-4-12 11:38' }0 A9 t* _% \
有试过把程序里面的路径和模板改为英文的吗

: V9 W5 B3 y$ ]5 }. f3 X* w: D还是不行6 d0 |# S* V9 P+ o
发表于 2020-7-13 11:11:14 | 显示全部楼层
057762768008
( [% W0 C* z9 u6 \
发表于 2021-6-24 13:43:54 | 显示全部楼层
顶一下,等待高手
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

GMT+8, 2025-9-16 21:48 , Processed in 0.061975 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

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