|
各位大神好:
下面的代码是从蓝老师那里拷过来修改,现在出现几个问题:
第一:EXCEL里面的工作表明SHEET1,和SHEET2名称不能改,改完就出错,如果想改成自己想要的工作表名称怎么修改代码?
第二:我想通过这段代码进行夸工作表查询数据,因为数据放在一个工作表数据太大打开工作表时太慢
第三: 如果运行时附表中没有C4单元格中的指定内容则通过MSBOX提示“缺少基础信息”。
以上,还望各位大神鼎力相助,感谢!
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Address <> "$C$4" Then Exit Sub
Dim myr&, arr, i&, n&
myr = "C:\Users\Administrator\Desktop\[被引用的文件.xlsx]Sheet1.[a65536].End(xlUp).Row"
arr = "C:\Users\Administrator\Desktop\[被引用的文件.xlsx]Sheet1.Range("a2:j" & myr):n = 13: m = 13
If Target.Address = "$C$4" Then
Range("A14:g1000").Clear
For i = 1 To UBound(arr)
If arr(i, 1) = Target.Value Then
n = n + 1
Cells(n, 1) = arr(i, 1)
Cells(n, 2) = arr(i, 2)
Cells(n, 3) = arr(i, 3)
Cells(n, 4) = arr(i, 4)
Cells(n, 5) = arr(i, 5)
Cells(n, 6) = arr(i, 6)
Cells(n, 7) = arr(i, 7)
Cells(n, 8) = arr(i, 8)
Cells(n, 9) = arr(i, 9)
Cells(n, 10) = arr(i, 10)
End If
Next
Cells(14, 1).Resize(n - 3, 15).Borders.LineStyle = 1
End If
End Sub
|
|