Vba实现工作薄和工作表密码破解

一、案例叙述:
在excel中给工作薄和工作表设置了密码后忘记了原密码应该怎么办呢?别着急,几行代码帮你搞定。
加密图片:

 二、破解工作薄密码:
(1)代码部分:

'破解工作薄密码
Sub pojie1()

Dim sh As Worksheet


ActiveWorkbook.Sheets.Copy

For Each sh In ActiveWorkbook.Sheets

sh.Visible = True

Next
End Sub

(2)图片展示:
 三、破解工作表密码:

(1)代码部分:

'破解工作表密码
Sub pojie2()

    Dim a As Worksheet

    Application.DisplayAlerts = False

    On Error Resume Next

    For Each a In Worksheets

        a.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, AllowFiltering:=True, AllowUsingPivotTables:=Tru
VBA是Visual Basic for Applications(VBA)的缩写,它是一种程序语言,可用于在微软的Office应用程序中自动化任务。当我们需要合并多个工作下的指定工作的指定列时,可以使用VBA来完成这个任务。 首先,我们需要打开一个新的工作,作为合并结果的目标工作。然后,我们需要编写VBA代码来遍历每个源工作,并复制指定的工作和列到目标工作。 下面是一个示例代码,它假设要合并的工作的名称已知,合并的工作为Sheet1,需要合并的列为A列: ``` Sub 合并工作() Dim 目标工作 As Workbook Dim 源工作 As Workbook Dim 目标工作 As Worksheet Dim 源工作 As Worksheet Dim 目标列 As Range Dim 源列 As Range Set 目标工作 = ThisWorkbook '将当前工作设为目标工作 Set 目标工作 = 目标工作.Sheets("Sheet1") '设置目标工作 '遍历源工作 For Each 源工作 In Workbooks If 源工作.Name <> 目标工作.Name Then '跳过目标工作 Set 源工作 = 源工作.Sheets("Sheet1") '设置源工作 Set 目标列 = 目标工作.Range("A1:A" & 源工作.Cells(Rows.Count, 1).End(xlUp).Row) '设置目标列 Set 源列 = 源工作.Range("A1:A" & 源工作.Cells(Rows.Count, 1).End(xlUp).Row) '设置源列 源列.Copy 目标列 '复制源列到目标列 End If Next 源工作 MsgBox "合并完成!" End Sub ``` 在上面的代码中,我们使用了一些变量来引用目标工作、源工作、目标工作、源工作、目标列和源列。我们使用循环遍历源工作,并使用Copy方法将源列中的数据复制到目标列中。最后,我们弹出一个对话框来显示合并完成的消息。 可以根据实际需求对上面的代码进行修改,比如指定不同的工作和列。希望这个回答对你有所帮助!
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

啊东东_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值