- ©«¤l
- 354
- ¥DÃD
- 5
- ºëµØ
- 0
- ¿n¤À
- 387
- ÂI¦W
- 0
- §@·~¨t²Î
- windows7
- ³nÅ骩¥»
- vba,vb,excel2007
- ¾\ŪÅv
- 20
- ©Ê§O
- ¨k
- µù¥U®É¶¡
- 2017-1-8
- ³Ì«áµn¿ý
- 2024-8-2
 
|
¥»©«³Ì«á¥Ñ singo1232001 ©ó 2022-6-3 18:24 ½s¿è
¦^´_ 1# oak0723-1
Sub ¤ñ¹ïdb()
T = Timer
Set s = Sheets("¤ñ¹ï")
rw = s.Cells(Rows.Count, "i").End(3).Row
If rw <= 5 Then rw = 5
s.Range("h5:in" & rw).ClearContents
ar = s.[I3:IN5]
br = Sheets("¸ê®Æ®w").Range("H5:IN" & Sheets("¸ê®Æ®w").Cells(Rows.Count, "i").End(3).Row)
For i = 1 To UBound(br): br(i, 1) = 0: Next
For i = 1 To UBound(br, 2): br(1, i) = 0: Next
For i = 1 To UBound(ar, 2)
k = i + 1
If ar(1, i) <> "" Or ar(2, i) <> "" Then
For j = 2 To UBound(br)
If ar(1, i) <= br(j, k) Then
If br(j, k) <= ar(2, i) Then
br(1, k) = br(1, k) + 1
br(j, 1) = br(j, 1) + 1
br(j, k) = 1
Else
br(j, k) = 0
End If
Else
br(j, k) = 0
End If
Next
Else
For j = 2 To UBound(br): br(j, k) = "": Next
End If
Next
br(1, 1) = "¦Xp"
s.[h5].Resize(UBound(br), UBound(ar, 2) + 1) = br
MsgBox Format(Timer - T, "0.0") & "’"
End Sub
Àu¤Æ¹L ©È§A¶q¹L¤j |
|