首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么每次使用VBA保存word文档时,文件大小都会增大?

每次使用VBA保存Word文档时,文件大小会增大的原因是因为VBA保存操作会在文档中添加一些额外的元数据和格式信息,导致文件大小增加。

具体来说,VBA保存操作会将VBA宏代码嵌入到Word文档中,以便在以后打开文档时能够执行这些宏。这些宏代码会占用一定的存储空间,从而导致文件大小增加。

此外,VBA保存操作还会将一些格式信息和样式信息保存到文档中,以确保文档在以后打开时能够正确显示。这些额外的信息也会增加文件的大小。

为了减小文件大小,可以考虑以下几点:

  1. 删除不必要的VBA宏代码:如果文档中的VBA宏代码不再需要,可以通过删除或禁用它们来减小文件大小。
  2. 压缩图片和媒体文件:如果文档中包含大量的图片和媒体文件,可以使用压缩工具来减小它们的文件大小,从而减小整个文档的大小。
  3. 清理无用的格式和样式信息:通过审查文档中的格式和样式,删除不必要的格式和样式,可以减小文件的大小。
  4. 使用压缩工具:可以使用一些专门的文件压缩工具来压缩Word文档,减小文件大小。

需要注意的是,虽然VBA保存操作会增加文件大小,但这些额外的信息对于文档的功能和可用性非常重要。因此,在减小文件大小的同时,需要确保文档的完整性和可用性不受影响。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云对象存储(COS):https://cloud.tencent.com/product/cos
  • 腾讯云云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 腾讯云云数据库 MySQL 版:https://cloud.tencent.com/product/cdb_mysql
  • 腾讯云人工智能:https://cloud.tencent.com/product/ai
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

红队 | CS加载宏上线初探

在此之后所有自动保存文档都会“感染”上这种宏病毒,如果其他用户打开了感染病毒的文档,宏病毒又会转移到他的计算机上 ?...在Word和其他微软Office系列办公软件中,宏分为两种 内建宏:局部宏,位于文档中,对该文档有效,如文档打开(AutoOpen)、保存、打印、关闭等 全局宏:位于office模板中,为所有文档所共用...使用实现设置好的监听器 ? 复制宏代码 ? 新建一个word文档生成一个宏 ? 找到project里面的Word对象,将代码粘贴 ?...ctrl+s保存,这里可以保存成.dotm或.docm都可以,这两个文件格式都是启用宏的Word格式 ? 我这里生成一个.dotm模板文件 ?...通过信息收集得知目标的 Office 版本,利用 VBA stomping 使宏被特定版本的 Office 打开才会执行恶意行为宏代码,除此之外的 Office 版本打开执行正常宏代码 ?

2.8K30

爱了!爱了!Markdown 必备组合神器!

一、为什么需要图床?...Markdown 可以理解为增强版的文本文档,语法简单,支持更多的风格样式,相比 word 更加轻便,文件大小更小,同时可导出为指定格式,目前大多是技术博客论坛已支持 Markdown 格式,基本上可以做到一次编写多处使用...Markdown 文档编写使用本地图片,但是无法在网络上使用。图床的作用可以理解为将文档中的图片放到网络上,直接引用网络地址,这样可以做到无论在那个平台都可以使用统一的图片地址。...:所属分支 token: |-seetings |-- Developer settings |------Personal access tokens 下生成注意:token 只会显示一次,记得保存如果你不建议重新配置一次的话...神器 VS Code,超详细Python配置使用指南再见 VBA!神器工具统一 Excel 和 Python 爱点赞的人,运气都不会太差

65620
  • Excel 旧用户正成为恶意软件的目标

    当用户打开文档并启用宏功能Word文档就会下载并打开另一个受密码保护的Microsoft Excel文档。...接下来,嵌入Word文档中的基于VBA的指令会读取精心构建的Excel电子表格单元以创建宏。这个宏将使用附加的VBA宏填充同一XLS文档中的附加单元格,从而禁用Office的安全防御功能。...对于Zloader,恶意软件会使用Word中的信息更新电子表格单元格的内容。Word文档可以读取下载的.XLS文件中特定Excel单元格的内容,然后使用基于WordVBA指令填充Excel文档。...而VBA则是微软用于Excel、Word和其他Office程序的编程语言,VBA允许用户使用宏记录器工具创建命令字符串。...当用户停止操作之后,这个宏将会被保存下来,并且会被分配给一个按钮,当用户点击这个按钮,它会再次运行完全相同的过程。

    4.7K10

    Active APT

    在调查恶意活动,我们很少看到使用 Outlook 宏来传递恶意软件。...它还将恶意 OTM 文件(Outlook VBA 项目)保存到磁盘,其中包含宏、恶意电子邮件附件,在某些情况下,还保存了电子邮件应发送到的收件人列表。...Outlook VBA 模块生成的电子邮件,带有包含远程模板的 Word 文档附件 该电子邮件包含英文和俄文文本。但是,如图 3 所示,俄语编码存在问题。...值得注意的是,有两个文本文件,一个用于 Word,一个用于 Excel,包含要插入目标文档的恶意宏的 VBA 源代码,以及负责查找和破坏现有文档的 .NET 程序集。...恶意软件将每个找到的文档移动到AppData文件夹,使用Microsoft.Office.Interop对象将恶意 Word 或 Excel 宏插入其中,然后将文档移回其原始文件夹。

    8K00

    进击的恶意文档VBA 进阶之旅

    每一个流模块中都会存在一个未被文档化的 PerformanceCache,其中包含了被编译后的 P-Code 代码,如果 _VBA_PROJECT 流中指定的 Office 版本与打开的 Office...VBA 编辑器 ? 与原来的文档没有任何区别,接下来使用 Office2013(64 位)打开 ? VBA 编辑器 ?...当启动 word ,会启动 excel 并弹出 excel 旧版宏警告,点击禁用宏后还会启动第二个 excel,一共启动五次,用户体验极差,当 excel 处理完成之后才会弹出 Word 文档 ?...分析此类样本可以使用 rtfobj 来查看 Ole 对象 ? -s 和 -d 参数 dump 出指定的嵌入对象,接着使用 Olevba 快速分析 ?...推荐使用 WMI 来执行后续攻击链,由 WMI 启动的进程的父进程为 wmiprvse.exe 而不是 word.exe 这样就可以与恶意 word 文档取消关联,规避检测 ?

    4.6K30

    干货 | Office文档钓鱼之如何快速进行宏免杀

    CobaltStrike 生成宏 打开 Word 文档,点击“Word 选项 — 自定义功能区 — 开发者工具(勾选) — 确定”。...双击 “ThisDocument” ,将原有内容全部清空,然后将 CobaltStrike 生成宏 payload 全部粘贴进去,保存并关闭该 VBA 编辑器 。...另存为的 Word 类型务必要选”Word 97-2003 文档 (*.doc)”,即 doc 文件,保证低版 本可以打开。之后关闭,再打开即可执行宏代码。...粘贴 CS 生成宏代码流程 然后粘贴进来 再 Ctrl+S 保存 这里需要选择否,然后保存为启用宏的 word 文档 注意:这里一定要先关闭杀软,不然会保存失败,因为现在还没有做免杀处理...然后文件夹下就有 233.docm 这个文件了 然后再创建一个简单的无毒 vba 脚本 保存退出,命名为 2.vba 然后按住 shift,点击鼠标右键即可在当前路径下打开 cmd 窗口 EvilClippy.exe

    2.6K20

    Cobaltstrike 学习笔记(八)Office宏病毒利用

    0x01 宏概述 宏是微软公司为其OFFICE软件包设计的一个特殊功能,软件设计者为了让人们在使用软件进行工作,避免一再地重复相同的动作而设计出来的一种工具,它利用简单的语法,把常用的动作写成宏,当在工作...Word中对宏定义为:“宏就是能组织到一起作为一独立的命令使用的一系列word命令,它能使日常工作变得更容易”。Microsoft Office使用宏语言VBA将宏作为一系列指令来编写。...宏可能引起宏病毒,它是一种寄存在文档或模板的宏中的计算机病毒。一旦打开这样的文档,其中的宏就会被执行,于是宏病毒就会被激活,转移到计算机上,并驻留在Normal模板上。...从此以后,所有自动保存文档都会“感染”上这种宏病毒,而且如果其他用户打开了感染病毒的文档,宏病毒又会转移到他的计算机上。...编辑器,点击视图,然后点击宏,自定义输入一个宏名,点击创建 将原本自带的代码清空,然后复制CobaltStrike生成的代码,保存退出 将该文档伪装后可通过钓鱼等手段发送给受害者,只要受害者是使用word

    72260

    Office如何快速进行宏免杀

    打开 Word 文档,点击“Word 选项 — 自定义功能区 — 开发者工具(勾选) — 确定”。 ? 编写主体内容后,点击 “开发工具 — Visual Basic” 。 ?...全部粘贴进去,保存并关闭该 VBA 编辑器 。 ? 另存为的 Word 类型务必要选”Word 97-2003 文档 (*.doc)”,即 doc 文件,保证低版 本可以打开。...把这两个下载回来即可 使用方法: EvilClippy.exe -s hello.vba diaoyu.doc 参数说明:-s 参数是通过假的 vba 代码插入到模块中,用以混淆杀毒程序,这里我们需要写一个正常...再 Ctrl+S 保存 ? 这里需要选择否,然后保存为启用宏的 word 文档 ?...注意:这里一定要先关闭杀软,不然会保存失败,因为现在还没有做免杀处理 然后文件夹下就有 233.docm 这个文件了 然后再创建一个简单的无毒 vba 脚本 ? 保存退出,命名为 2.vba ?

    4.3K30

    十九.宏病毒之入门基础、防御措施、自发邮件及APT28宏样本分析

    Microsoft Office使用Visual Basic for Applications(VBA)编写宏。...大家可能接触到的宏并不多,但如果经常使用Word文档,可能会遇到宏,比如国家自然科学基金申请,或者作者之前分享的宏技巧。...打开WPS Word如下图所示,宏是不能使用的。 2.安装配置 这时需要下载VBA for WPS并安装才能使用(下载地址为第19篇)。...从此以后,所有自动保存文档都会“感染”上这种宏病毒,而且如果其他用户打开了感染病毒的文档,宏病毒又会转移到他的计算机上。 那么,宏病毒又如何获得这些控制权呢? 只有拿到控制前之后宏病毒才能进行传播。...你可能会疑惑,为什么只弹出了两个对话框呢? 因为宏包括两种类型——局部宏和全局宏。而退出Word程序和进入Word程序不是当前文档能定义的。

    2K50

    Range对象

    我用自己的理解先来讲讲它: 因为我们主要是在说Excel的VBA为什么要特指是Excel的VBA?...我们所讲的Range对象是Excel特有的(虽然Word里也有个Range对象,但只是名字相同),它所代表的就是我们平时操作Excel表格里的最小单元——单元格。...VBA特有的一些对象,就是微软已经做好了让使用者直接使用的东西。...当然我们现在没有必要关注它那么多的方法、属性,很多其实我们都很少使用的,最常用的我认为有这么几个: Activate 激活单元格,相当于你用鼠标点击选中 Value 这个前面多次用过,单元格里保存的内容...基本上我们平时能怎么操作单元格,Range对象都会有对应的方法或属性。 一开始你可能完全不知道它能有什么,你可以把能想到的操作,通过初识VBA介绍的录制功能录制出来,去慢慢了解。

    1.5K20

    Excel VBA编程教程(基础一)

    基本上,能用鼠标和键盘能做的事情,VBA 也能做。 正如前文所述,VBA 可以运行在 Office 软件上,包括 Excel、Word、PPT、Outlook 等。...VBA 语言在 Office 软件中是通用的,基本语法和用法都相同。但是每一个软件具有自己独有的对象,例如 Excel 有单元格对象,Word 有段落对象,PPT 有幻灯片对象。...编写第一个VBA宏 「宏」:简单的说,宏是一段可以运行的 VBA 代码片段。 step one 创建启用宏的工作簿 首先新建一个工作簿,并将工作簿保存为「启用宏的工作簿」类型。...step three Excel 工作簿中的 VBA 代码通常保存在工作表对象或模块中。本例中,我们用模块保存 VBA 代码。...[初始值] 和 [结束值] 是给定的值; [步长] 是每次循环,变量的增量。如果为正值,变量增大;如果为负值,变量减小。 下面看一个实际的例子,求 1 至 10 数字的累积和。

    12.1K22

    干货 | Office文档钓鱼的实战和免杀技巧

    另存为的Word类型务必要选”Word 97-2003 文档 (*.doc)”,即 doc 文件,保证低版本可以打开。之后关闭,再打开即可执行宏代码。...默认情况下,Office已经禁用所有宏,但仍会在打开Word文档的时候发出通知。...,这里我们需要写一个正常 无毒正常的 vba 脚本 注意:VBA重踏不适用于以Excel 97-2003工作簿(.xls)格式保存的文件 Sub Hello()Dim XX=MsgBox("Hello...文档加载附加模板的缺陷所发起的恶意请求,而达到的攻击目的,所以当目标用户点开攻击者发送的恶意Word文档就可以通过向远程服务器发送恶意请求的方式,然后加载模板执行恶意模板的宏。...文档的URL 将DOCX解压后的内容再以存储模式压缩为ZIP 修改后缀名为DOCX,打开后即可实现远程注入宏文档 按照上述Word宏钓鱼方法制作,保存保存类型为 dotm , fish.dotm, 开启

    7.2K21

    Office VBA入门及高级教程

    Office VBA是一门标准的宏语言。VBA语言不能单独运行,只能被office软件(如:Word、Excel等)所调用。...VBA是一种面向对象的解释性语言,通常使用来实现Excel中没有提供的功能、编写自定义函数、实现自动化功能等。...Office 中 VBA 编程的强大之处在于,您可以使用鼠标、键盘或对话框执行的几乎所有操作也可以使用 VBA 自动执行。此外,如果可以使用 VBA 完成一次,则可以轻松完成一百次。...除了编写 VBA 脚本以加速日常任务的强大功能之外,您还可以使用 VBA 向 Office 应用程序添加新功能,或者以特定于您的业务需求的方式提示您的文档用户并与之交互。...例如,您可以编写一些 VBA 代码,显示一条弹出消息,提醒用户在他们第一次尝试保存文档将其保存到特定的网络驱动器。

    2.6K30

    Python如何操作office实现自动化及win32com.client的运用

    这里边就包含了不少重复性的工作,工作中常常有一个固定的模板来出report,而每次只需将相关的数据手动导入,如果将这些重复性的动作,实现自动化,无疑可以省去不少功夫。...的函数模块了,如果你要用word,更改成 ‘ Word.Applicaiton ‘ 即可。...注意点 使用win32com.client可以让你更加顺利的处理各种excel或者word的复杂情况,相比于openpyxl, xlrd, xlwd功能会更加齐全。...openpyxl在保存用save(),很多原有的格式图表是无法保留下来的,比如对excel进行修改,里边原有的透视表,用openpyxl的save()是无法保存的,但是使用win32com.client...关于VBA函数模块调用,直接采用录制宏的方式获取,无需去找文档,这也是更加方便灵活的地方。

    3.1K31

    从微软 Word 中提取数据

    使用 Word 中的 VBA 宏连接到数据库,然后将数据直接插入到数据库中。使用 Python 脚本通过 win32com 来提取数据,然后将数据上传到数据库中。...此外,我们还在提取数据的过程中遇到了一个小问题,当我们从 Word 表格中提取字符串,在每个字符串的末尾都会出现一个奇怪的小方框字符。我们希望找到一种方法来解决这个问题。...使用 VBA 宏从 Word 中提取数据,并使用 Left() 函数来去除字符串末尾的小方框字符。...对于第二种方案,使用 VBA 宏从 Word 中提取数据,并使用 Left() 函数来去除字符串末尾的小方框字符。...如果你需要提取特定的内容,例如表格数据、特定样式的段落或带有特定格式的文本,可以在遍历文档添加更多的逻辑处理。

    14210

    VBA专题06-4:利用Excel中的数据自动化构建Word文档—Excel与Word整合示例1

    使用VBA自动从Excel中获取数据来创建Word报表文档,一般按照以下步骤: 1.创建Word文档模板,用来作为数据分析结果发布平台。在模板中,在每个要插入数据的位置定义书签。...2.使用VBA,将Excel中的数据复制到Word文档,从而形成一份报表文档。 示例1:自动复制Excel数据区域到Word文档 本示例使用前期绑定,即首先要在VBE中设置对Word对象库的引用。...Nothing End Sub 复制Excel数据到Word,表格太宽往往会导致格式问题,代码中使用了一个技巧来调整表格列宽,即每列的宽度设置为表格的总宽度除以表格列数。...此外,当在书签位置粘贴数据,会覆盖掉书签,因此,重新创建该书签以确保下次运行代码能正常运行。 有时,需要将Excel工作表中的多个数据区域复制到Word文档,并且这些数据区域大小还不相同。...Nothing End Sub 这里使用的方法比较“笨”,因为在Excel中有多少数据区域,就要命名多少个区域,并且在Word中也要建立相应数量的书签。

    5.6K11

    office模板文件|调整格式多累人啊,不如一开始就不要乱

    打工人又爱又恨的Excel表格在各种在线表格出现之后,各种收集数据用户乱写的痛点算是解决了。但是word和ppt的格式统一问题似乎还是很难搞。...2003及以下版本的文档(*.doc) 4、Word 2003及以下版本的文档(*.dot) 5、启用宏VBAword 文档 (*.docm) 6、启用宏VBAword 模板 (*.dotm)...这种时候,我就很希望能有一个一键排版工具,之后不需要每次都排版了,直接套用就好了。这个愿望,office模板可以帮我实现,一次排版,终身受用,可以通过模板的搭建极大地提高办公效率。...使用的时候,稍微就有点讲究了。...模板文件会默认保存到自定义Office模板文件夹中,如果是给别人用的统一模板,把dotx格式的文件发给对方即可,对方打开是一个空白的word文档,在文档中进行编辑撰写即可,不需要其他的操作。

    30620

    Word VBA技术:对文件夹中的所有文档进行批量替换操作(加强版)

    标签:Word VBA 在上篇文章:《Word VBA技术:对文件夹中的所有文档进行批量替换操作》中,我们给出了一段代码,可以遍历指定文件夹中的所有文档,并执行指定的查找和替换操作。...如果文件夹中含有子文件夹,则可以使用下面的代码。下面的代码将遍历指定文件夹及其子文件夹中的所有文档,并执行指定的查找和替换操作。...On Error Resume Next '设置是否在第一次循环执行的语句 '用于仅对第一个文档显示查找和替换对话框 blnFirstLoop = True '设置文件夹目录 Set fd...= fso.GetFolder(strPath) '搜索文件夹并获取Word文档 SearchFiles fd '遍历文件夹及其子文件夹中的Word文档 For i = 1 To cnt...(wdDialogEditReplace) .ReplaceAll = 1 .Execute End With End If '保存且关闭修改后的文档

    2.1K30

    超实用!Office三件套批量转PDF以及PDF书签读写与加水印

    今天呢,我将带大家完全只使用 win32 调用 VBA 的 API 来完成这个转换。 另外,将完成 PDF 书签的写入和提取操作以及批量加水印的操作。关于水印我们可以加背景底图水印或悬浮文字水印。...本文目录: 文章目录 office三件套转换为 PDF 格式 将 Word 文档转换为 PDF 将 Excel 表格转换为 PDF 将 PowerPoint 幻灯片转换为 PDF 批量转换成PDF PDF...下面我们逐个查询 API 来测试: 将 Word 文档转换为 PDF Document对象有个 ExportAsFixedFormat 方法: https://docs.microsoft.com/zh-cn.../office/vba/api/word.document.exportasfixedformat 所使用到的几个重要参数如下: 下面我们测试一下: word_app = win32.gencache.EnsureDispatch...如果直接给未经 PyPDF2 库压缩的 PDF 增加文字水印会导致文件大小增加较大,此时还可以使用 PyPDF2 库对 PDF进行压缩输出。

    2.9K10

    Word VBA技术:确定文档页数

    标签:Word VBA 前言:专门讲Word VBA的文章很少,可能专门研究Word VBA的人不多,与Excel VBA相比,Word VBA似乎用处少一些,这可能是对Word VBA了解不多的缘故。...然而,无论如何,懂得一些Word VBA的知识,或者平时收集一些Word VBA代码,在需要用时或者在考虑解决方案,往往能够起到作用。...这段时间利用休假空闲,零零星星了解一些Word VBA知识,收集于此,也在此与大家分享,希望日后有用。 今天的代码很简单,使用VBA给出当前光标或者选择的句子所在的页数,或者文档共有多少页。...文档共有多少页 使用下面的代码: Selection.Information(wdNumberOfPagesInDocument) 或者,使用下面的代码: ActiveDocument.BuiltInDocumentProperties...后记:有兴趣的朋友,可以分享应用Word VBA的场景,我们共同边学习边研究。

    68230
    领券