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

XLSM中的代码在其他工作簿上不起作用。我该如何修复?

XLSM是一种Microsoft Excel文件格式,其中包含了宏代码(VBA)和数据。当在其他工作簿上运行XLSM中的代码时出现问题,可能是由于以下原因导致的:

  1. 缺少引用:XLSM文件中的宏代码可能引用了其他工作簿中的对象或库,而这些对象或库在当前工作环境中不存在。解决方法是确保所有引用的对象或库都可用,并正确设置引用。
  2. 宏安全性设置:Excel具有宏安全性设置,限制了可以运行的宏代码。如果XLSM文件中的宏代码被视为不受信任,Excel可能会禁止其运行。可以通过更改Excel的宏安全性设置来解决此问题。具体步骤是:打开Excel,点击“文件”选项卡,选择“选项”,在弹出的对话框中选择“信任中心”,点击“信任中心设置”,选择“宏设置”,然后根据需要调整宏安全性级别。
  3. 引用错误:XLSM文件中的宏代码可能引用了其他工作簿中的特定单元格、工作表或命名范围,而这些引用在其他工作簿中不存在或发生了变化。解决方法是检查代码中的引用,并确保它们与其他工作簿中的实际情况相匹配。
  4. 代码逻辑错误:XLSM文件中的宏代码可能存在逻辑错误,导致在其他工作簿上无法正常运行。解决方法是仔细检查代码逻辑,确保其正确性,并进行必要的修复。

修复XLSM中代码在其他工作簿上不起作用的具体步骤如下:

  1. 确保所有引用的对象或库都可用,并正确设置引用。
  2. 检查并更改Excel的宏安全性设置,以允许运行XLSM文件中的宏代码。
  3. 检查代码中的引用,并确保其与其他工作簿中的实际情况相匹配。
  4. 仔细检查代码逻辑,修复可能存在的错误。

如果以上步骤无法解决问题,建议提供更多关于具体代码和环境的信息,以便更准确地定位和解决问题。

腾讯云提供了一系列与云计算相关的产品和服务,包括云服务器、云数据库、云存储、人工智能等。您可以访问腾讯云官方网站(https://cloud.tencent.com/)了解更多详细信息和产品介绍。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Excelize 发布 2.6.0 版本,功能强大 Excel 文档基础库

支持 XLAM / XLSM / XLSX / XLTM / XLTX 等多种文档格式,高度兼容带有样式、图片(表)、透视表、切片器等复杂组件文档,并提供流式读写 API,用于处理包含大规模数据工作簿...兼容性提升 提升与 LibreOffice 电子表格应用程序兼容性,修复 LibreOffice 打开工作表名包含空格时,自动过滤器失效问题,解决 issue #1122 提升对工作簿替代内容支持...,保留工作簿工作表以及 drawingML 替代内容 提升与页面设置打印质量 DPI 设置属性兼容性 问题修复 修复另存为工作簿时,页面布局属性丢失问题,解决 issue #1117 修复部分情况下...,对工作表进行修改后合并单元格区域未更新问题 修复样式解析异常导致粗体和部分其他字体样式丢失问题,解决 issue #1119 修复部分情况下将文档保存为 XLAM / XLSM / XLTM /...,显示或隐藏工作表标签属性丢失问题,解决 issue #1160 修复部分情况下嵌套公式计算错误问题,解决 issue #1164 修复部分情况下公式计算结果精度不准确以及 x86 和 arm64

1.5K61

Workbook工作簿对象方法(一)

2、参数字符串如果指定是已有的excel文件,那么新建文件会以excel文件为模板创建新工作簿。新工作簿模板工作簿后面加有规律数字。...(此处用了with语句,可以方便增加其他属性更改。) 二、工作簿对象open方法 使用EXCLE文件时,VBA代码打开工作簿是通过workbooks集合open方法。...Sub 代码,首先定义wb1为工作簿变量,fn1为字符串变量。...1、参数FileName必需,指定一个字符串,代表要打开工作簿文件名。 2、参数UpdateLinks可选,指定文件中外部引用(链接)方式。如果忽略参数,那么将提示用户指定如何更新链接。...如果忽略参数但是工作簿受密码保护,则会提示用户输入密码。 其他如果需要用到可以参考excel帮助文件。 ---- 本节主要介绍工作簿对象常用方法add和open方法,后续会继续介绍其他方法。

5.9K40

Excel揭秘25:突破数据有效性列表字符限制

如下图1所示,“数据验证”对话框,选择“允许”下拉列表“序列”,“来源”框设置数据列表来源。 ? 图1 数据有效性列表数据来源有两种设置方式: 1. 使用逗号分隔字符串 2....下面,让我们核查一下这个超长列表是否被保存了。将工作簿保存为.xlsm文件后,关闭工作簿。...图3 关闭打开压缩文件夹,将其扩展名改回.xlsm,然后Excel打开,你会发现Excel弹出下图4所示提示信息。 ? 图4 如果单击“是”,选择修复,将会弹出下图5所示提示信息。 ?...图5 在打开工作簿,数据有效性列表已被删除。 复修记录并没有告诉我们数据有效性列表被移除原因,但可以肯定是,列表字符数超出了字符数限制。...你可能会说,可以Workbook_Open事件添加长列表,然后Workbook_BeforeSave事件中将其删除以避免修复问题,但是使用代码绕过限制字符数没有很好用处。

2.3K20

Excelize 2.3.2 发布,Go 语言 Excel 文档基础库,2021 年首个更新

支持 XLSX / XLSM / XLTM 等多种文档格式,高度兼容带有样式、图片(表)、透视表、切片器等复杂组件文档,并提供流式读写 API,用于处理包含大规模数据工作簿。...2021年1月4日,社区正式发布了 2.3.2 版本,版本包含了多项新增功能、错误修复和兼容性提升优化。...下面是有关版本更新内容摘要,完整更改列表可查看 changelog。...兼容性提升 提升包含 6 个以上数据系列折线图与 Kingsoft WPS™ 应用程序兼容性,相关 issue #627 避免部分情况下工作簿内部样式数据产生冗余 动态解析工作簿核心数据部件 支持工作多行复用相同行标签工作簿...issue #735 修复当使用 AddPicture 向带有多个合并单元格工作插入图片时,指定自适应尺寸失效问题,相关 issue #748 修复部分情况下复制行时,合并单元格处理异常问题,

1.4K61

Excel应用实践14:合并多个工作簿数据—示例3

本例,要合并工作簿放置同一文件夹,为方便描述,这些工作簿名称和其要合并数据工作表如下(假设要合并工作簿有3个): “工作簿1.xlsm工作表“完美Excel” “工作簿2.xlsm工作表...要求: 1.将这些工作簿工作表合并到名为“合并.xlsm工作簿工作表“数据”。...2.“合并.xlsm工作簿工作表“数据”列F,放置对应行数据来源工作簿工作表名,例如如果数据行2数据来自工作表“完美Excel”,则在该行列F单元格输入“完美Excel”。...3.要合并工作簿工作表,例如工作簿1.xlsm“完美Excel”数据发生变化后,“合并.xlsm工作运行代码后,会清除“数据”工作表中原先数据并重新合并上述工作簿工作表数据。...图1 “合并.xlsm工作簿,打开VBE,插入标准模块,输入下面的代码: Sub CombineWorkbook() Dim wb As Workbook Dim i As Long

1.5K40

Workbook工作簿对象方法(二)

四、工作簿对象save方法 保存excel工作簿VBA主要是通过workbook工作簿对象save方法和saveas方法 代码thisworkbook.save 表示保存代码所在工作簿。...示例1 保存所有工作簿 代码定义wb变量为工作簿对象,通过for each循环语句,在所有的工作簿循环,保存所有工作簿。...4、参数Password指定保存工作簿密码,区分大小写。 5、参数WriteResPassword指定工作簿写保护密码。如果使用密码保存工作簿并且在打开时未提供密码,则以只读方式打开工作簿。...如果新建工作簿,新建工作簿为活动工作簿。 举例如下: ThisWorkbook.Name返回示例中代码所在工作簿名称为“工作簿1.xlsm”。...而ActiveWorkbook.Name返回当前代码所在工作簿名称为“vba.xlsm” ---- 本节主要介绍工作簿对象常用方法,后续会介绍application对象属性和方法,以及事件等内容等

4.4K20

Workbook工作簿对象基础

一、工作簿对象引用 一个工作簿对象workbook实际就是一个excel文件,vba代码使用时引用它主要有两种方式,一种是通过工作簿对象名称,一种是是通过index索引号。...Workbooks("vba.xlsm").Worksheets.Count表示统计vba.xlsm工作簿对象普通工作数量,引用工作簿对象时,表示方法为:Workbooks("vba.xlsm"...使用excel时,都是某个工作簿workbook中进行编辑。即工作簿当前是被激活状态,使用activeworkbook来表示。...workbook工作簿对象层级上为application主程序对象,代码可以选择性省略。下面举例说明,获得当前活动工作簿名称,和工作簿活动工作名称。...定义变量i为字符串变量后,将thisworkbook对象,即代码所在工作簿name名称赋值给变量i,最后立即窗口中显示。当前代码所在工作簿名称为vba.xlsm

2.7K30

Excelize 发布 2.6.1 版本,支持工作簿加密

支持 XLAM / XLSM / XLSX / XLTM / XLTX 等多种文档格式,高度兼容带有样式、图片(表)、透视表、切片器等复杂组件文档,并提供流式读写 API,用于处理包含大规模数据工作簿...#1314流式写入器将不再为值为 nil 单元格写入工作表,解决 issue #1299问题修复修复当数据透视表中值区间与行/列区间包含相同字段时,生成工作簿损坏问题,解决 issue #1203修复因缺少单元格类型检查导致获取单元格富文本内容异常问题...和 #1313修复部分情况下设置单元格值时,单元格继承行列样式有误问题,解决 issue #1163修复不包含视图属性设置工作设置窗格时将出现 panic 问题修复部分情况下公式引擎多参数公式计算结果有误问题修复因内部页眉页脚属性定义顺序有误导致生成工作簿损坏问题...,解决 issue #1257修复部分情况下单元格赋值失效问题,解决 issue #1264修复设置工作表视图属性时可能出现 panic修复部分情况下因工作表核心属性 dcterms 属性为空,导致生成工作簿损坏问题修复新建工作表后工作簿属性丢失问题...,解决 issue #1310其他Go Modules 依赖模块更新单元测试与文档更新,修复单元测试 go1.19 下兼容性问题包含简体中文、英语、法语、俄语、日语、韩语、阿拉伯语、德语和西班牙语多国语言文档网站更新致谢感谢

1.3K41

告诉你什么是Excel VBA对象模型及如何引用对象

Sheets,特定工作簿中所有工作集合,此时与工作表类型无关,包含常规工作表和图表工作表。 引用对象 在编写VBA代码时,了解如何引用对象是至关重要。...假设要处理工作簿Book1工作表Sheet1单元格A1,则其完全限定引用为: Application.Workbooks(“Book1.xlsm”).Worksheets(“Sheet1”).Range...下面来看看一些简化引用情形。 情形1:Application对象 Excel总是假设你处理Application对象,因此,可以从引用忽略对象。...这样,上面的完全限定引用代码可简化为: Workbooks(“Book1.xlsm”).Worksheets(“Sheet1”).Range(“A1”) 情形2:当前工作簿和当前工作表 Excel总是假设你处理当前工作簿...(标准模块中代码所在工作簿),如果你目的是处理当前工作簿,则上面的代码可进一步简化为: Worksheets(“Sheet1”).Range(“A1”) 如果你要处理工作表是当前活动工作表,代码又可简化为

4.3K30

VBA实用小程序52: 将所有VBA模块导出到另一工作簿

学习Excel技术,关注微信公众号: excelperfect 有时候,我们觉得某工作簿代码很有用,想将它们移到另一工作簿。...可以工作簿每个代码模块单击鼠标右键,快捷菜单,使用“导出文件”命令(如下图1所示),将模块逐一导出到某个文件夹,然后,打开想要导入模块工作簿工作簿工程资源管理器单击右键,选择导入文件...下面的代码一次性将指定工作簿除导出程序所在模块外所有VBA模块导入到指定另一工作簿: Sub ExportModule() Dim wbExport As Workbook Dim..."VBAProgram52.xlsm") '要导入模块工作簿 Set wbImport =Workbooks("ExportToWorkbook.xlsm") '遍历代码模块...End Sub 你可以将代码相应工作簿名称修改为实际工作簿名称。 程序代码图片版如下: ?

2.6K20

Excelize 2.3.0 发布, Go 语言 Excel 基础库

支持 XLSX / XLSM / XLTM 等多种文档格式,高度兼容带有样式、图片(表)、透视表、切片器等复杂组件文档,并提供流式读写 API,用于处理包含大规模数据工作簿。...字符型单元格值存储于共享字符表,降低生成文档体积 支持工作无 r 属性 row 标签,以修复部分情况下读取工作表内容为空问题 支持多命名空间 XML 标签,以兼容金山 WPS 等电子表格应用程序...,解决 issue #651 自动筛选器兼容 Office 2007 - 2010 版本电子表格应用程序,解决 issue #637 问题修复 修复工作簿内产生了重复筛选数据库而导致文档损坏问题...避免添加样式时生成重复样式定义 修复设置富文本包含特殊字符丢失问题 修复使用 Office 应用程序打开添加批注文档,保存后再次打开批注形状不为矩形问题,解决 #672 避免部分情况下开启编译内联优化参数时潜在运行时...panic 问题,解决 issue #677 和 #679 修正获取百分比单元格值数值精度问题 其他 修复特定情况下打开无效工作表时出现异常 panic 问题 完善单元测试错误处理 包含简体中文

1.3K51

Excelize 发布 2.7.1 版本,Go 语言 Excel 文档基础库

支持 XLAM / XLSM / XLSX / XLTM / XLTX 等多种文档格式,高度兼容带有样式、图片(表)、透视表、切片器等复杂组件文档,并提供流式读写 API,用于处理包含大规模数据工作簿...年4月10日,社区正式发布了 2.7.1 版本,版本包含了多项新增功能、错误修复和兼容性提升优化。...单元格将会跳过生成单元格,相关 issue #756获取超链接 GetCellHyperLink 函数支持读取合并单元格超链接添加了新导出类型 ChartType 以表示图表类型枚举兼容性提升兼容带有函数组工作簿兼容带有严格模式...XML 命名空间地址工作簿主题,相关 issue #1447提高了与文档内部不含工作簿关系部件工作簿兼容性,以修复打开此类工作簿可能出现 panic问题修复修复了特定情况下读取日期时间类型单元格值存在精度误差问题修复了特定情况下当修改原本存储了日期时间类型单元格为文本类型值...,相关 issue #1455大幅提高了对于带有合并单元格工作处理速度,相关 issue #1448其他Go Excelize 提供了支持 WebAssembly / Javascript 环境

1.6K51

如何通过VBA代码实现禁止用户打印Excel工作表?保护隐私必备技能

我们可以通过VBA代码来实现禁止用户打印Microsoft Excel工作簿,接下来一起看一下具体操作流程。 以素材文件为例,右键单击工作表列表区域Sheet1,选中右键菜单“查看代码”。...Visual Basic编辑,双击左侧工程资源管理器ThisWorkbook,将以下代码复制粘贴到代码窗口中。...以素材文件为例,素材工作簿中有多个工作表,如何设置让用户只能够打印“汇总表”,分表只能查看,不能打印呢? 只需将VBA代码改为以下代码即可。...Cancel = True End If End Sub 这时打印工作簿其他分表时,会有提示框提示禁止打印。打印“汇总表”没有影响。...今天分享到此结束,最后存储文件环节非常重要,需要将包含VBA代码Excel工作簿另存为“*.xls”或“*.xlsm”格式,否则VBA代码将失效。

1.6K00

VBA: 打开Excel文件两种方式(GetObject函数和Workbooks.Open方法)

End Sub 使用GetObject函数,获取对指定Excel文件引用。如果Excel文件尚未打开,那么程序会在后台打开工作簿。...注意:通过GetObject函数引用某个工作簿时,如果工作簿已经打开,但不处于活动(Active)状态,则程序可能会报错。...(2)在打开指定工作簿时,如果工作簿已经提前打开,使用GetObject函数有可能会报错,因为工作簿一般不处于活动状态; 使用Workbooks.Open方法通常不会导致错误。...针对GetObject函数存在问题,解决方法有两个: 1)在打开该文件后,通过显示菜单取消隐藏功能让表格再显示出来。...2)wb.Close SaveChanges:=True之前添加一句代码,Application.Windows(wb.name).Visible = True。

4.2K10

啰哩啰嗦地讲透VBA引用单元格区域18个有用方法--Range属性

尽管引用特定Excel工作单元格时具有这种灵活性,但Range对象还是有一些限制。...特别是,这里并没有指定所引用特定Excel工作簿工作表。为此,必须理解下面的内容。 从集合引用对象 VBA,对象集合是一组相关对象。...假设想要处理工作簿“Book1.xlsm名为“Sheet1”工作表,两种方法引用如下: 1.使用对象名称: Application.Workbooks(“Book1.xlsm”).Worksheets...继续上面相同例子,可写为: Range 使用Range属性引用Range对象 在上面的示例,我们使用了Range代表要引用单元格区域,实际代码,需要指定想要处理特定单元格区域。...因此,如果应用Range.Range属性,属性相对于Range对象而不是Worksheet对象起作用。 这意味着可以应用Range.Range属性,用于引用与另一个区域相关区域。

6K20

Excelize 2.4.0 正式版发布, 新增 152 项公式函数支持

支持 XLSX / XLSM / XLTM 等多种文档格式,高度兼容带有样式、图片(表)、透视表、切片器等复杂组件文档,并提供流式读写 API,用于处理包含大规模数据工作簿。...,相关 issue #769 筛选器对应名称中使用绝对引用以提升与 Apache OpenOffice 应用程序兼容性,解决 issue #776 流式解析工作表过程增加 XML 标签关闭事件处理...,提升行/列迭代器读取性能,修复部分情况下读取行数有误问题 提高工作簿工作表文档使用相对路径兼容性 避免创建重复富文本样式,解决 issue #787 提高工作簿工作表文档使用绝对路径与 Windows...修复工作表默认自定义行高检查 修复取消工作全部合并单元格时导致文档损坏问题, 解决 issue #782 修复部分情况下筛选条件部分丢失问题 修复工作簿包含图表工作表、对话工作表时,UpdateLinkedValue...产生错误问题 修复部分情况下 GetColWidth 返回默认列宽错误问题 修复无法通过 Excel 电子表格应用程序向创建数据透视表添加时间轴与切片器问题,解决 issue #804 设置名称时内部

2.1K71

Win10:右键新建选项添加启用宏工作簿.xlsm

文章背景:工作生活涉及到VBA,时常要将Excel文件保存为.xlsm格式。而在右键新建可选项,一般只有.xlsx文件。下面介绍如何在右键新建选项添加启用宏工作簿.xlsm。...(6)回到.xlsm文件夹,点击新建shellnew文件夹,双击FileName打开,将刚才复制内容填到数值数据,并将最后ecxel12.xlsx 改为 excel14m.xlsm。...(7)桌面上新建一个空启用宏工作簿,将其重命名为:Excel14M.xlsm,然后将该文件移动到以下路径文件夹:C:\Program Files\Microsoft Office\root\vfs...桌面上点击右键,选择新建,此时可以看到可选项已经有了启用宏工作簿。...参考资料: [1] 如何在右键添加“新建启用宏工作簿.xlsm”(https://jingyan.baidu.com/article/066074d62dca1cc3c21cb099.html)

3.5K10

加载宏及其源文件之间切换

下面是www.wimgielis.com中提供一个示例,Personal.xlsb(个人宏工作簿,还添加了五个过程xlsm版本(主要用于开发)和xlam版本(主要用来测试和使用)之间切换: Addin_SAVE_AS...:卸载xlam版本,将打开xlsm版本 Addin_TOGGLE_VISIILITY:使xlam版本可见或不可见 可以原网站搜索并下载示例代码工作簿。...也可以完美Excel微信公众号中发送消息: 切换加载宏 获取示例代码工作簿下载链接。 或者,直接到知识星球App完美Excel社群中下载示例代码工作簿。...下面是4个程序代码: Const Addin_FileName As String = "Menu_Test.xlsm" ' 文件及其加载项对应文件之间切换过程 Sub Addin__SAVE_AS...和xlam)都存储加载宏默认文件夹

8010

自定义功能区示例:创建用于工作表导航动态组合框

标签:VBA,自定义功能区 《自定义功能区示例:创建用于工作表导航下拉列表》,我们Excel功能区添加一个自定义选项卡,然后再选项卡添加带有下拉列表一个自定义组,用于从下拉列表中选择工作表...,从而快速导航到工作表,这对于工作簿中有大量工作表且要快速找到相应工作用户来说,非常有用。...我们对此示例进行修改,使用组合框来实现,如下图1所示,并且当用户工作簿中新建或删除工作表时,组合框列表项会自动更新。...图1 假设工作簿名称为CustomDynamicCombobox.xlsm,使用Custom UI Editor for Microsoft Office打开工作簿,在其中输入代码: <customUI...,然后重新打开工作簿,即可以看到更新后自定义功能区界面。

29920
领券