EXCEL2013 VBA提示类型不匹配

Private Sub Worksheet_Change(ByVal Target As Range)On Error Resume NextIf Target.Column = 3 Then MkDir "\\USER-20171225QG\Users\Public\文件\商川客户文件\" & Target.Value End IfEnd SubPrivate Sub Worksheet_SelectionChange(ByVal Target As Range)If Target.Column = 3 And Target <> "" ThenShell "explorer.exe " & "\\USER-20171225QG\Users\Public\文件\商川客户文件\" & Target.Text, vbNormalFocusEnd IfEnd Sub

第1个回答  2019-07-21
主要是你选择了多个单元格,Target <> ""这个判断出错(无法判断多个单元格),两种修改方法:
方法一、只比较选择单元格区域的第一个单元格
If Target.Column = 3 And Target(1) <> "" Then
方法二、不改IF这句,在这句前面再增加一个限制条件:
If Target.CountLarge > 1 Then Exit Sub本回答被提问者采纳
第2个回答  2019-07-21
判断写错了,应该是Target.value<>“”本回答被网友采纳
第3个回答  2019-07-21
是不是 Range(“F”& i +1) 这个单元格的值 不是 “数值型”?
相似回答