|
<p><font size="1">Sub 唯一编号普通()<br/> Dim z%, x%, y%<br/> z = 2<br/> For y = 1 To 2<br/> x = Cells(65536, y).End(xlUp).Row<br/> Range(Cells(2, y), Cells(x, y)).Copy Range("d" & z)<br/> z = [d65536].End(xlUp).Row + 1<br/> Next<br/> Range("d2:d" & z).AdvancedFilter Action:=xlFilterInPlace, Unique:=True<br/>End Sub</font></p><p><font size="1">Sub 唯一编号数组()<br/> Dim arr1, arr2, arr3(), z%, x%, y%<br/> arr1 = Range("a2:a11")<br/> arr2 = Range("b2:b11")<br/> ReDim Preserve arr3(1 To 20, 1 To 1)<br/> For z = 1 To 10<br/> arr3(z, 1) = arr1(z, 1)<br/> Next<br/> z = z - 1<br/> For y = 1 To 10<br/> For x = 1 To 10<br/> If arr2(y, 1) = arr1(x, 1) Then GoTo 100<br/> Next<br/> z = z + 1<br/> arr3(z, 1) = arr2(y, 1)<br/>100<br/> Next<br/> Range("d2").Resize(20, 1) = arr3<br/>End Sub<br/></font></p><p><font size="1">Sub 唯一编号字典()<br/> Dim d As New Dictionary<br/> Dim arr1, arr2, x%, y%<br/> arr1 = Range("a2:a11")<br/> arr2 = Range("b2:b11")<br/> For x = 1 To UBound(arr1)<br/> d(arr1(x, 1)) = ""<br/> Next x<br/> For y = 1 To UBound(arr2)<br/> d(arr2(y, 1)) = ""<br/> Next y<br/> Range("d2").Resize(d.Count) = Application.Transpose(d.Keys)<br/>End Sub<br/></font></p><p><font size="1">Sub 物品1有物品2没有()<br/> Dim arr1, arr2, z%, x%, y%<br/> arr1 = Range("a2:a11")<br/> arr2 = Range("b2:b11")<br/> For y = 1 To 10<br/> For x = 1 To 10<br/> z = [e65536].End(xlUp).Row + 1<br/> If arr1(y, 1) = arr2(x, 1) Then GoTo 100<br/> Next<br/> Range("e" & z) = arr1(y, 1)<br/>100<br/> Next<br/>End Sub</font></p>
[此贴子已经被作者于2008-1-10 10:58:17编辑过] |
|