Private Sub Worksheet_Change(ByVal Target As Range) Dim m As Range, str As String, isFind As Boolea
哪位高手能帮我看下这段EXCEL的宏,为什们一旦设置了共享工作簿,开启“允许多用户同时编辑,同时允许工作簿合并”的功能后,就显示“运行时错误‘94’无效使用Null”的字...
哪位高手能帮我看下 这段EXCEL的宏,为什们一旦设置了共享工作簿,开启“允许多用户同时编辑,同时允许工作簿合并”的功能后,就显示“运行时错误‘94’ 无效使用Null”的字样,摁停止然后宏就不起作用了。。。我想共享此EXCEL 同时可以让两个人修改此EXCEL,但是一旦设置,宏就不起作用了 怀疑部分代码与此共享存在冲突,但是才疏学浅又找不到原因,在线等,很急,跪求大虾知道~
下为完整:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim m As Range, str As String, isFind As Boolean
Application.EnableEvents = False
isFind = False
str = Target.Text
If str <> "" Then
For Each m In Range(Range("A1"), ActiveCell.SpecialCells(xlLastCell))
If Not (m.Row() = Target.Row() And m.Column() = Target.Column()) And m.Text = str Then
m.EntireRow.ClearContents
Target.EntireRow.ClearContents
If m.Row() < Target.Row() Then Cells(m.Row(), 1).Select Else Cells(Target.Row(), 1).Select
isFind = True
Exit For
End If
Next m
If Not isFind Then
If Target.Column() = 1 Then
Cells(Target.Row(), 4).Select
ElseIf Target.Column() = 4 Then
Cells(Target.Row() + 1, 1).Select
End If
End If
End If
Application.EnableEvents = True
End Sub 展开
下为完整:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim m As Range, str As String, isFind As Boolean
Application.EnableEvents = False
isFind = False
str = Target.Text
If str <> "" Then
For Each m In Range(Range("A1"), ActiveCell.SpecialCells(xlLastCell))
If Not (m.Row() = Target.Row() And m.Column() = Target.Column()) And m.Text = str Then
m.EntireRow.ClearContents
Target.EntireRow.ClearContents
If m.Row() < Target.Row() Then Cells(m.Row(), 1).Select Else Cells(Target.Row(), 1).Select
isFind = True
Exit For
End If
Next m
If Not isFind Then
If Target.Column() = 1 Then
Cells(Target.Row(), 4).Select
ElseIf Target.Column() = 4 Then
Cells(Target.Row() + 1, 1).Select
End If
End If
End If
Application.EnableEvents = True
End Sub 展开
2011-04-02
展开全部
如果 Application.EnableEvents = False 程序执行一次 不重新打开就不执行任务了
如果对指定对象启用事件,则该值为 True。Boolean 类型,可读写。
示例
本示例在保存文件之前禁用事件,以使 BeforeSave 事件不能触发。
Application.EnableEvents = False
ActiveWorkbook.Save
Application.EnableEvents = True
如果对指定对象启用事件,则该值为 True。Boolean 类型,可读写。
示例
本示例在保存文件之前禁用事件,以使 BeforeSave 事件不能触发。
Application.EnableEvents = False
ActiveWorkbook.Save
Application.EnableEvents = True
更多追问追答
追问
您好 感谢你的回答 。。。但是我对这个就是小白 能请您告诉我在不改变此宏功能的情况下通过添加代码解决此问题吗?是直接把您的打代码拷贝到里面就行么?这事比较急 谢谢了 大虾 就是把您给我的这段代码加到程序前面就可以了吗?
追答
Application.EnableEvents = False
Application.EnableEvents = True
去掉这2句代码 是最直接的方法 如果还出错 就是不能多用户同时编辑了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询