此工作簿中的 Visual Basic for Applications (VBA)宏已损坏且已被删除。 解决办法

Excel宏 此工作簿中的 Visual Basic for Applications (VBA)宏已损坏且已被删除

保存文件后再次打开显示如下:
在这里插入图片描述
当时显示的时候,那叫一个气得呀!我辛辛苦苦弄了这么久的宏就这样没了?!

查完资料发现,这个是系统语言设置的问题
你只需要把宏的模块的名字改成英文的就可以解决了

具体如下:

  1. 点击宏
    在这里插入图片描述
    2.点击编辑
    在这里插入图片描述
    3.把模块名字改成英文
    在这里插入图片描述
    然后你的Excel宏就可以正常保存啦!

参考自:http://excel880.com/blog/archives/129
网页内还有已经保存了却又打不开的解决办法,遇到这个问题的小伙伴可以试试

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
VBAVisual Basic for Applications的缩写,是一种用于编程和自动化任务的编程语言。要汇总文件夹下的工作簿,可以通过编写VBA代码来实现。 首先,我们需要打开VBA编辑器。在Excel,可以通过按下ALT + F11键来打开VBA编辑器。 接下来,在VBA编辑器的工程资源管理器窗格,可以看到项目资源管理器的"微软Excel对象"。在该对象下找到"工作簿",右键点击该工作簿,选择"插入",然后选择"模块",即可创建一个新的VBA模块。 在新建的模块,我们可以开始编写VBA代码。以下是一个简单的示例代码: ```vba Sub 汇总工作簿() Dim 文件夹路径 As String Dim 文件名 As String Dim 目标工作簿 As Workbook Dim 源工作簿 As Workbook 文件夹路径 = "C:\文件夹路径" '将文件夹路径替换为实际的文件夹路径 Set 目标工作簿 = ThisWorkbook '将汇总的工作簿设置为当前活动工作簿 文件名 = Dir(文件夹路径 & "\" & "*.xlsx") '查找目标文件夹下的所有xlsx文件 Do While 文件名 <> "" Set 源工作簿 = Workbooks.Open(文件夹路径 & "\" & 文件名) '打开每个工作簿工作簿.Sheets(1).UsedRange.Copy 目标工作簿.Sheets(1).Cells(Rows.Count, 1).End(xlUp).Offset(1) '将源工作簿的数据复制到目标工作簿的下一行 源工作簿.Close SaveChanges:=False '关闭源工作簿,不保存更改 文件名 = Dir '继续查找下一个文件 Loop MsgBox "工作簿汇总完成。" End Sub ``` 在上述代码,我们首先声明了所需的变量,包括文件夹路径、文件名、目标工作簿和源工作簿。然后,通过使用Dir函数来查找文件夹下的所有xlsx文件。 在循环,我们打开每个工作簿,并使用Copy方法将源工作簿的数据复制到目标工作簿的下一行。最后,关闭源工作簿。循环将继续,直到没有更多的文件需要汇总。 最后,将提示一个消息框,显示工作簿汇总完成。 希望上述示例能帮助您理解如何使用VBA汇总文件夹下的工作簿。请注意,示例的文件夹路径需替换为实际的文件夹路径。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值