找回密码 注册 QQ登录
一站式解决方案

iCAx开思网

CAD/CAM/CAE/设计/模具 高清视频【积分说明】如何快速获得积分?快速3D打印 手板模型CNC加工服务在线3D打印服务,上传模型,自动报价
查看: 963|回复: 0
打印 上一主题 下一主题

[求助] BOM表保存 为TXT文件的代码 更改为 保存成XLS文件

[复制链接]
跳转到指定楼层
1
发表于 2018-6-5 12:10:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多同行朋友,交流,分享,学习。

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

x
本帖最后由 MALAI 于 2018-6-5 14:15 编辑

工程图中,有一个表,想通过VBA 将表格另存为EXCEL 的 .xls格式;
文件名= 当前文件名.XLS;
保存位置=当前工程图所在文件夹;打开对应的.XLS 文件;
说明:表格有可能是 孔表,也有可能是材料明细表,

以下代码是在论坛中找到的,
手动选中表格,执行宏,在相同的文件夹中另存成为TXT文件  (如果能把手动选中表格忽略那更好)
如果要改成  XLS
对应代码应该怎么改


      我 怀疑是 改这个  SaveAText,
value = swTableAnnotation.SaveAsText(FileName, Separator)   '表格另存为TXT文件










' ****************
' BOM TO TEXT
' ****************
Dim swApp As SldWorks.SldWorks
Dim Part As SldWorks.ModelDoc2
Dim swSelMgr     As SldWorks.SelectionMgr
Dim swTableAnnotation       As SldWorks.TableAnnotation

Dim FileName As String
Dim Separator As String
Dim value As Boolean

Sub main()

Set swApp = Application.SldWorks
Set Part = swApp.ActiveDoc '
If Part Is Nothing Then Exit Sub

PathName = Part.GetPathName     '读取当前SW文档名(含路径)
FileName = Left(PathName, Len(PathName) - 7) + ".txt"     '提取当前SW文件名加后缀名
Set swSelMgr = Part.SelectionManager   '设选择器
Debug.Print swSelMgr.GetSelectedObjectCount
Debug.Print swSelMgr.GetSelectedObjectType(1)

If (swSelMgr.GetSelectedObjectCount = 0 Or Not (swSelMgr.GetSelectedObjectType(1) = swSelANNOTATIONTABLES)) Then

  MsgBox "请在视图中选择BOM表格"

  Exit Sub

End If


Set swTableAnnotation = swSelMgr.GetSelectedObject6(1, -1)    '选择为表格

value = swTableAnnotation.SaveAsText(FileName, Separator)   '表格另存为TXT文件      我 怀疑是 改这个  SaveAText,

If value Then
  MsgBox "BOM表格已另存为" & FileName
'Part.ClearSelection
End If
End Sub





分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 赞一下!赞一下!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3D打印手板模型快速制作服务,在线报价下单!

QQ 咨询|手机版|联系我们|iCAx开思网  

GMT+8, 2024-11-25 21:15 , Processed in 0.019784 second(s), 10 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2024 www.iCAx.org

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