|
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件 ★ 免费下载 ★ ★ 使用帮助★
'按输出凑了一个,感觉条件还不够,,,
Option Explicit
Sub test()
Dim arr, i, j, m, p, dic, sht
Set dic = CreateObject("scripting.dictionary")
ReDim brr(1 To 10 ^ 4, 1 To 9)
For Each sht In Sheets
If sht.Name <> "汇总" And sht.[a1].Value = "序号" Then
arr = sht.[a1].CurrentRegion.Resize(, UBound(brr, 2))
For i = 2 To UBound(arr, 1)
If dic.exists(arr(i, 1)) Then
MsgBox "序列号重复:" & arr(i, 1): Exit Sub
Else
m = m + 1: dic(arr(i, 1)) = m
For j = 2 To UBound(arr, 2)
brr(m, j) = arr(i, j)
Next
End If
Next
End If
Next
With Sheets("汇总")
arr = .[a1].CurrentRegion.Offset(1).Resize(, 9)
For i = 1 To UBound(arr, 1) - 1
If dic.exists(arr(i, 1)) Then p = dic(arr(i, 1)) Else p = m + 1
For j = 2 To UBound(arr, 2)
arr(i, j) = brr(p, j)
Next
Next
.[k2].Resize(UBound(arr, 1) - 1, UBound(arr, 2)) = arr
End With
End Sub |
评分
-
1
查看全部评分
-
|