Option Explicit
Function Delete3(Arr As Variant) As Variant
Dim i As Integer
For i = LBound(Arr) To UBound(Arr)
If i > UBound(Arr) Then Exit For
If Arr(i) = 3 Then
Do
Dim j As Integer
For j = i To UBound(Arr) - 1
Arr(j) = Arr(j + 1)
Next j
If LBound(Arr) = UBound(Arr) Then
Delete3 = Empty
Exit Function
End If
ReDim Preserve Arr(LBound(Arr) To UBound(Arr) - 1)
If i > UBound(Arr) Then Exit For
Loop While Arr(i) = 3
End If
Next i
Delete3 = Arr
End Function
Sub Test()
Delete3 (Array(3, 3, 3, 3, 1, 3, 7, 3, 3, 3, 9, 3, 3))
Delete3 (Array(3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3))
Delete3 (Array(1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3))
Delete3 (Array(3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1))
End Sub
´ÓÍøÉÏËѼ¯µ½µÄVB´úÂ룬ÓÃEXE·½Ê½ÊµÏÖÁËÔ¶³Ì×¢È룬²»¹ýÔÚ·´²¡¶¾Èí¼þµÄ±£»¤Ï£¬ÓпÉÄܵ¼ÖÂ×¢Èëʧ°Ü¡£×ªÌùÕâ¸ö´úÂ룬½ö¹©´ó¼ÒѧϰºÍ²Î¿¼¡£
Ò»¡¢´°¿Ú´úÂ룺
Option Explicit
Private Sub cmdLock_Click()
If LockKeyboard(True) Then
cmdLock.Enabled = False
cmdUnLock.Enabled = Tr ......