如果将excel数据公式移除,只保留计算之后的值,将大大减少excel文件.

因为有上篇移除excel外部数据链接的经验,进行excel数据公式移除将快的多,方法如下.

首先我们得明白怎么手动移除excel的格式.

选中要处理的数据,然后右击 copy, 再右击paste Special,然后出现如下图的提示框.选中 Values. 此时要处理的数据将只以值呈现,格已去掉.

然后通过宏录制,来查看用的什么函数,发现VBA用PasteSpecial来处理. 接下来在搜索VBA函数. 内容如下:

应用于 Range对象的 PasteSpecial方法。

将剪贴板中的 Range对象粘贴到指定区域中。

expression.PasteSpecial(Paste, Operation, SkipBlanks, Transpose)

expression   必需。该表达式返回一个 Range对象。

Paste  XlPasteType 类型,可选。指定要粘贴的区域部分。

XlPasteType 可为以下 XlPasteType 常量之一。
xlPasteAll 默认值
xlPasteAllExceptBorders
xlPasteColumnWidths
xlPasteComments
xlPasteFormats
xlPasteFormulas
xlPasteFormulasAndNumberFormats
xlPasteValidation
xlPasteValues
xlPasteValuesAndNumberFormats

Operation  XlPasteSpecialOperation 类型,可选。指定粘贴操作。

XlPasteSpecialOperation 可为以下 XlPasteSpecialOperation 常量之一。
xlPasteSpecialOperationAdd
xlPasteSpecialOperationDivide
xlPasteSpecialOperationMultiply
xlPasteSpecialOperationNone 默认值
xlPasteSpecialOperationSubtract

SkipBlanks   Variant 类型,可选。若为 True,则不将剪贴板上区域中的空白单元格粘贴到目标区域中。默认值为 False。

Transpose   Variant 类型,可选。若为 True,则粘贴区域时转置行和列。默认值为 False。

应用于 Worksheet对象的 PasteSpecial方法。

以指定格式将剪贴板中的内容粘贴到工作表上。可用本方法从其他应用程序中粘贴数据,或以特定格式粘贴数据。

expression.PasteSpecial(Format, Link, DisplayAsIcon, IconFileName, IconIndex, IconLabel, NoHTMLFormatting)

expression   必需。该表达式返回一个 Worksheet对象。

Format   Variant 类型,可选。指定数据的剪贴板格式的字符串。

Link   Variant 类型,可选。若为 True,则建立与被粘贴数据的源之间的链接。如果源数据不适于链接,或源应用程序不支持链接,将忽略本参数。默认值为 False。

DisplayAsIcon   Variant 类型,可选。若为 True,则将粘贴内容显示为图标。默认值为 False。

IconFileName   Variant 类型,可选。如果 DisplayAsIcon 为 True,则指定包含所用图标的文件名。

IconIndex   Variant 类型,可选。图标文件内的图标索引号。

IconLabel   Variant 类型,可选。图标的文本标签。

NoHTMLFormatting   Variant 类型,可选。若为 True,则从 HTML 中删除所有的格式设置、超链接和图像。若为 False ,则完整粘贴 HTML。默认值为 False。

说明

注意   当 Format = “HTML”时,NoHTMLFormatting 才起作用。在所有其他情况下,NoHTMLFormatting  将被忽略。

必须在使用本方法之前选定目标区域。

本方法可能会更改工作表的选定区域,这取决于剪贴板中的内容。

然后根据此描述应用于 Worksheet对象的 PasteSpecial方法。

以指定格式将剪贴板中的内容粘贴到工作表上。可用本方法从其他应用程序中粘贴数据,或以特定格式粘贴数据。

expression.PasteSpecial(Format, Link, DisplayAsIcon, IconFileName, IconIndex, IconLabel, NoHTMLFormatting)

expression   必需。该表达式返回一个 Worksheet对象。

Format   Variant 类型,可选。指定数据的剪贴板格式的字符串。

Link   Variant 类型,可选。若为 True,则建立与被粘贴数据的源之间的链接。如果源数据不适于链接,或源应用程序不支持链接,将忽略本参数。默认值为 False。

DisplayAsIcon   Variant 类型,可选。若为 True,则将粘贴内容显示为图标。默认值为 False。

IconFileName   Variant 类型,可选。如果 DisplayAsIcon 为 True,则指定包含所用图标的文件名。

IconIndex   Variant 类型,可选。图标文件内的图标索引号。

IconLabel   Variant 类型,可选。图标的文本标签。

NoHTMLFormatting   Variant 类型,可选。若为 True,则从 HTML 中删除所有的格式设置、超链接和图像。若为 False ,则完整粘贴 HTML。默认值为 False。

说明

注意   当 Format = “HTML”时,NoHTMLFormatting 才起作用。在所有其他情况下,NoHTMLFormatting  将被忽略。

必须在使用本方法之前选定目标区域。

本方法可能会更改工作表的选定区域,这取决于剪贴板中的内容。

根据此描述,然后我们找到VBS方法:

如下
) '-4163代表 xlPasteValues 即只复制值.
至此,针对excel去除外部数据源链接及excel内部公式的方法全部总结结束. 这样处理下来文件大小减少了有1/3.满足了我的需求. 希望对大家有帮助.

VBS 移除excel数据公式,只保留值的更多相关文章

  1. VBS 处理断开excel数据链接格式,只保留值

    最近有个项目是将一个excel压缩之后发给客户,但是由于excel数据过大,即使压缩之后仍然接近5M,因为是大批量发送数据,所以非常慢.急需要将EXCEL数据压缩. 后来我想到一个办法,就excel数 ...

  2. SQL中删除重复的行(重复数据),只保留一行 转

    方法一:使用在T-SQL的编程中 分配一个列号码,以COL1,COL2组合来分区排序,删除DATABASE重复的行(重复数据),只保留一行 // COL1,COL2是数据库DATABASE的栏位 de ...

  3. 你真的会玩SQL吗?删除重复数据且只保留一条

    在网上看过一些解决方法 我在此给出的方法适用于无唯一ID的情形 表:TB_MACVideoAndPicture 字段只有2个:mac,content mac作为ID,正常情况下mac数据是唯一的,由于 ...

  4. SQL删除指定条件的重复数据,只保留一条

    BEGIN DELETE TB FROM TableName TB WHERE TB.ID IN (SELECT MIN(ID) FROM TableName TB2 GROUP BY TB2.Col ...

  5. Delphi - 操作Excel数据公式的实现

    procedure TF_SMP_FT_NEW.RzBitBtn_StartToChangeClick(Sender: TObject); var i, j, ni, nj, iRows, iCol, ...

  6. Oracle、SQLServer 删除表中的重复数据,只保留一条记录

    原文地址: https://blog.csdn.net/yangwenxue_admin/article/details/51742426 https://www.cnblogs.com/spring ...

  7. oracle删除重复数据,只保留一条

    比如,某个表要按照id和name重复,就算重复数据 delete from 表名 where rowid not in (select min(rowid) from 表名 group by id,n ...

  8. mysql删除表中重复数据,只保留一个最小的id的记录

    语句: delete from table1 where id not in (select minid from (select min(id) as minid from table1 group ...

  9. SQL循环遍历,删除表里某一列是重复的数据,只保留一条。

    DECLARE @tempId NVARCHAR(Max), @tempIDD uniqueidentifier WHILE EXISTS ( SELECT UserId FROM Users Gro ...

随机推荐

  1. Asp.Net MVC4开发二: Entity Framework在Asp.Net MVC4中的应用

    ORM作为一种数据库訪问机制已广泛地应用于各种项目其中,在.Net开发中,应用比較广泛的ORM框架大致有以下几个: 官方支持的有:Linq to SQL.Entity Framework.三方的有:N ...

  2. 按钮CSS样式

      CreateTime--2017年5月5日11:23:18Author:Marydon 按钮CSS样式 实现效果: <input type="button" onclic ...

  3. 名词解释:alpha版、beta版、rc版的意思(转)

    很多软件在正式发布前都会发布一些预览版或者测试版,一般都叫“beta版”或者 “rc版”,特别是开源软件,甚至有“alpha版”,下面来解释一下各个版本的意思. alpha版:内部测试版.α是希腊字母 ...

  4. JDBC JdbcUtils( 本博多次出现的简陋工具类)

    package test; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet;  ...

  5. oracle中如何设置主键并且让其自动增长

    由于oracle中是没有自动增长的的,需要自己去进行写触发器等方式去进行设置: 找了一下他人写的,有两种方法可以设置主键,一种是自增长主键,另一种就是生成唯一序列. 一.自增长主键 我创建一个用户的信 ...

  6. 【linux】FTP添加用户,设置权限和目录

    一.目的,新建一个用户 test2,登录ftp,它只有自己的主目录权限,其他同级和上级目录没有权限 二.ftp安装.配置 yum -y install vsftpd //通过yum来安装vsftpd ...

  7. 超级干货,python常用函数大总结

    我们在学习python的时候,接触最多的往往则是那些函数,对于python函数,在这里为大家总结归纳了这些,如果有缺漏,还请及时留言指正哦! 话不多说,干货来袭! 1.常用内置函数:(不用import ...

  8. Linux命令-目录处理命令:ls

    ls 查看当前目文件 ls -a  查看当前目录的所有文件(--all所有文件) 以"."开头的文件是隐藏文件. ls / 查看根目录的文件 ls -l 查看当前目录文件(--lo ...

  9. Tsung运行环境安装(转)

    转自:http://www.cnblogs.com/tsbc/p/4272974.html#_Toc372013359 tsung Tsung运行环境安装 检查安装一下依赖包,以免在安装的时候报错.( ...

  10. spring in action 8.1 使用Spring web flow

    一.说明 Spring Web Flow是spring MVC的扩展,它支持基于流程的应用程序,他将流程的定义和实现流程行为的类和视图分离开来. 1.1 spring中配置web flow,目前需要在 ...