VBS 处理断开excel数据链接格式,只保留值
2014-11-13 15:55
393 查看
最近有个项目是将一个excel压缩之后发给客户,但是由于excel数据过大,即使压缩之后仍然接近5M,因为是大批量发送数据,所以非常慢.急需要将EXCEL数据压缩. 后来我想到一个办法,就excel数据公式去掉,只保留数值,发现文件小好多. excel 操作去掉数据链接如图所示.
然后我在网上搜索了好多方法,但是没有去掉 这个链接的做法, 后来先用excel 录制宏的方法, 最后找到用BreakLink方法来处理. 然后又搜索到VBA的此方法详解. 如下
将链接到其他 Microsoft Excel 源或 OLE 源的公式转换为值。
expression.BreakLink(Name, Type)
expression 必需。该表达式返回“应用于”列表中的对象之一。
PictureFile String 类型,必需。链接的名称。
Type XILinkType 类型,必需。链接的类型。
下一步就是转换成VBS的写法. 经过苦苦搜寻,终于找到了VBS 有类似的方法 BreakLink(Name,Type)
问题来了,这个type我该输入什么呢? 然后又经过苦苦搜寻(发现现在很难找到比较全面的参考手册)终于找到Type该输入的类型了.................
XlLinkType
Constant Value
xlLinkTypeExcelLinks 1
xlLinkTypeOLELinks 2
objExcel.Workbooks.Open strSearchPath
Set objWorkbook = objExcel.ActiveWorkbook
For Each LinkSource In objWorkbook.LinkSources
objWorkbook.BreakLink LinkSource,1 '此处
LinkSourses 为链接到外部excel的地址; 1即为要处理断开链接的类型 即为EXCEL 数据源
Next
用了将近一天的时间搜寻资料,至此终于运行成功了. 因为我在搜索资料的时候,没有见网上处理过此类型的例子.记录下来供后来者参考.大家记住红色部分是关键就可以了.
然后我在网上搜索了好多方法,但是没有去掉 这个链接的做法, 后来先用excel 录制宏的方法, 最后找到用BreakLink方法来处理. 然后又搜索到VBA的此方法详解. 如下
将链接到其他 Microsoft Excel 源或 OLE 源的公式转换为值。
expression.BreakLink(Name, Type)
expression 必需。该表达式返回“应用于”列表中的对象之一。
PictureFile String 类型,必需。链接的名称。
Type XILinkType 类型,必需。链接的类型。
XlLinkType 可为以下 XlLinkType 常量之一。 |
xlLinkTypeExcelLinks 对 Microsoft Excel 源的链接。 |
xlLinkTypeOLELinks 对 OLE 源的链接。 |
VBA 的方法如下:
Sub DealBreakLink() Dim astrLinks As Variant ' Define variable as an Excel link type. astrLinks = ActiveWorkbook.LinkSources(Type:=xlLinkTypeExcelLinks) ' Break the first link in the active workbook. ActiveWorkbook.BreakLink _ Name:=astrLinks(1), _ Type:=xlLinkTypeExcelLinks End Sub
下一步就是转换成VBS的写法. 经过苦苦搜寻,终于找到了VBS 有类似的方法 BreakLink(Name,Type)
问题来了,这个type我该输入什么呢? 然后又经过苦苦搜寻(发现现在很难找到比较全面的参考手册)终于找到Type该输入的类型了.................
XlLinkType
Constant Value
xlLinkTypeExcelLinks 1
xlLinkTypeOLELinks 2
objExcel.Workbooks.Open strSearchPath
Set objWorkbook = objExcel.ActiveWorkbook
For Each LinkSource In objWorkbook.LinkSources
objWorkbook.BreakLink LinkSource,1 '此处
LinkSourses 为链接到外部excel的地址; 1即为要处理断开链接的类型 即为EXCEL 数据源
Next
用了将近一天的时间搜寻资料,至此终于运行成功了. 因为我在搜索资料的时候,没有见网上处理过此类型的例子.记录下来供后来者参考.大家记住红色部分是关键就可以了.
相关文章推荐
- VBS 处理断开excel数据链接格式,只保留值
- POI处理excel文件中的日期格式数据bug的解决思路及方法
- POI使用SAX处理大量数据的xlsx格式的Excel文件
- VBS 移除excel数据公式,只保留值
- 小猫统计导入excel数据用于批量证书打印时,时间数据格式的规范化处理
- Excel中用VB脚本处理多表数据格式转换问题
- 转:现在您可以随意的将datagridView中的数据导出到Excel中了(仍然保留你在datagridView中的排序格式),加注释的哦
- 类似excel格式数据的数组处理
- Java 将数据处理成 PDF 、Excel、Word格式
- 【MATLAB】导入EXCEL数据日期格式处理
- POI 导出Excel 时间格式和小数点数据的处理
- php处理excel时间数据--——使用PHPExcel判别和格式化Excel中的日期格式
- android studio 解析Excel数据格式导入poi-3.17.jar时的一系列报错及处理Failed resolution of: Ljavax/xml/stream/XMLEventFactory,duplicate entry: org/apache/xmlbeans/xml/stream/Location.class,GC overhead limit exceeded
- datagridView之数据导出到Excel(仍然保留你在datagridView中的排序格式)
- [导入]将纯数字导入Excel时数据格式仍保持不变的方法
- 在ASP.NET中将数据库服器的数据导出到客户端,且导出后的格式为EXCEL。
- 把数据库里的数据用Excel文件的格式显示在浏览器中
- 将DATAGRID的数据导出为一个标准EXCEL格式的文件
- 用 HTML 格式导出 Excel 时,如何保留显示网格线
- asp.net导出Excel/Csv格式数据方案