高手入:EXCEL中锁定的问题,用宏解决

来自:    更新日期:早些时候
关于对excel中单元格数据进行锁定的问题,需要高手解决!~

可以用VBA实现:
打开文档,按Alt+F11,双击你的工作表,在代码窗口黏贴下面的语句:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)If Target.Address = "$A$1" ThenApplication.CutCopyMode = TrueEnd IfEnd Sub保存文档即可。A1就是你有数据有效性的单元格,这段代码,不影响其他单元格的复制黏贴操作。
祝你顺利

可能是你没有安装VBA 项目的数字证书的原因,在XPhome版的默认情况下是不安装VBA 项目的数字证书的,你可以在控制面板下更改office的安装,重新安装该证书,光盘里有的,装了再试试吧

下面的代码,分别为两个按钮的宏。

密码暂定为“123”。你可以自己改。

Dim IS_FIRST As Long

Option Explicit

Sub Macro1()

'

' Macro1 Macro

' Macro记録日 : 2012/6/6

' Button1 Event

'

    Dim i As Long

    

    If ActiveSheet.ProtectContents Then

        ActiveSheet.Unprotect

    End If

    

    If IS_FIRST = 0 Then

        Cells.Locked = False

        Selection.FormulaHidden = False

        

        For i = 1 To ActiveSheet.Protection.AllowEditRanges.Count

            ActiveSheet.Protection.AllowEditRanges(i).Delete

        Next i

    End If

    

    Range("A4:C10").Locked = True

    Selection.FormulaHidden = False

    

    ActiveSheet.Protection.AllowEditRanges.Add Title:="范囲" & IS_FIRST, Range:=Range( _

        "A4:C10"), Password:="123"

        

    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True

    

    IS_FIRST = IS_FIRST + 1

    

End Sub

Sub Macro2()

'

' Macro2 Macro

' Macro记録日 : 2012/6/6

' Button2 Event

'

    Dim i As Long

    If ActiveSheet.ProtectContents Then

        ActiveSheet.Unprotect

    End If

    

    If IS_FIRST = 0 Then

        Cells.Locked = False

        Selection.FormulaHidden = False

        

        For i = 1 To ActiveSheet.Protection.AllowEditRanges.Count

            ActiveSheet.Protection.AllowEditRanges(i).Delete

        Next i

    End If

    

    Range("A13:C19").Locked = True

    Selection.FormulaHidden = False

    

    ActiveSheet.Protection.AllowEditRanges.Add Title:="范囲" & IS_FIRST, Range:=Range( _

        "A13:C19"), Password:="123"

        

    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True

    

    IS_FIRST = IS_FIRST + 1

    

End Sub 

还有一张效果图的,不过好像只能传一张图片。




高手入:EXCEL中锁定的问题,用宏解决视频

相关评论:
  • 19897764109高手入:EXCEL中锁定的问题,用宏解决
    雷若邓下面的代码,分别为两个按钮的宏。密码暂定为“123”。你可以自己改。Dim IS_FIRST As Long Option Explicit Sub Macro1()'' Macro1 Macro ' Macro记録日 : 2012\/6\/6 ' Button1 Event 'Dim i As Long If ActiveSheet.ProtectContents Then ActiveSheet.Unprotect End If If IS_FIRST = 0 Then...

  • 19897764109EXCEL锁定单元格的问题,急,请高手解答,,,
    雷若邓我想知道,在不锁定单元格的情况下你又如何把其它数据同时粘贴进B4,B6和B8 比如这里有三个数在三个单元格:1,2,3 在不锁定的情况下你如何一次贴到B4,B6,B8 我也想知道这方法、

  • 19897764109请教高手EXCEL,其中一列锁定、保护后还是可以编辑,是哪里的问题?
    雷若邓如果你只需要一列不让别人修改的话,那么先选择所有单元格,单元格设置→保护,先取消锁定 然后不让别人修改的那列设置锁定,这样还没完哦,呵呵 最后再设置一下“保护工作表”就可以了,如图:这个方法可行,我刚试过,可能还有更简单的方法吧,希望能帮到你。

  • 19897764109用VBA条件锁定EXCEL单元格的问题,高手进!
    雷若邓以下代码是通过selectionchange事件写的,有点投机取巧,就是当选中C列的单个单元格时判断对应的B列中单元格里的数值是否等于A2中的数值,如果等于则禁止选中C列的单元格。Private Sub Worksheet_SelectionChange(ByVal Target As Range)If Target.Count > 1 Then [a1].SelectElse If Target.Colum...

  • 19897764109EXCEL锁定格式的问题,高手赐教
    雷若邓Sub test()For i = 1 To CommandBars("format").Controls.Count CommandBars("format").Controls(i).Enabled = False Next i End Sub 补充:感觉这个问题用宏来解决需要处理的内容太多,还是不限制别人更改格式,在别人改好之后合并的时候选择“数值粘贴”就可以了。

  • 19897764109excel高手请赐教!如何将表中部分单元格锁定?
    雷若邓全选工作表,格式——单元格——保护 把“锁定”那个选定取消掉 选中需要保护的部分,格式——单元格——保护 设为锁定。然后 工具——保护——保护工作表 可以设密码 就是说,当工作表被保护的时候,单元格格式处于“锁定”状态的,保护有效,其他部分可修改。

  • 19897764109有一个EXCEL的问题,电脑高手入.
    雷若邓大概是因为EXCEL的安全验证拖慢了速度,如果只是打开慢,编辑保存都正常的话那就更有可能是这个原因了,而且OFFICE对不同用户的权限都有较为严格的要求

  • 19897764109求教各位高手大虾:Excel里的这个问题如何办到?
    雷若邓用数据透视表.按步骤来操作.可以显示和隐藏各类数据.每当有新数据添加,右击透视表,进行更新就可以了.

  • 19897764109Excel中单元格格式中→保护→锁定有什么作用?
    雷若邓默认的是锁定,一般是否锁定无所谓,不过当你选择了“保护工作表”的时候就有区别了,锁定的单元格不能被编辑甚至可以设置为不能选择。

  • 19897764109关于Excel电子表格的问题 高手入!!!
    雷若邓选中所有的单元格,然后右单击. 如图

  • 相关主题精彩

    版权声明:本网站为非赢利性站点,内容来自于网络投稿和网络,若有相关事宜,请联系管理员

    Copyright © 喜物网