BUG: Error 451 "Object not a collection" When Using Left()

ID: Q180455


The information in this article applies to:
  • Microsoft Windows CE Toolkit for Visual Basic 6.0
  • Microsoft Windows CE Toolkit for Visual Basic 5.0, version 1.0


SYMPTOMS

If the Left Function is used in a form module, the following error occurs:

Error 451 "Object not a collection"


CAUSE

Visual Basic is misinterpreting the Left function as the Left property of the Form.


RESOLUTION

There are two possible workarounds to this problem:

  1. (This is the preferred method.) Use the Mid Function with the start parameter equal to 1, similar to the following:
    
          Private Sub Form_Load()
              On Error Resume Next
              Dim sDrive
              'Use the following line instead of sDrive = Left("c:\windows", 3)
              sDrive = Mid("c:\windows", 1, 3)
              If Err.Number = 0 Then
                 MsgBox "The Drive is " & sDrive, vbInformation, "Drive"
              Else
                 MsgBox "Error: " & Err.Number & " - " & _
                 Err.Description, vbInformation, "Error Message"
              End If
          End Sub 


  2. Use the Left Function in a standard module (*.bas).



STATUS

Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article.


MORE INFORMATION

Steps to Reproduce Behavior

  1. Create a new Windows CE (HPC) Project in Visual Basic. Form1 is created by default.


  2. Add the following code to the Load Event of Form1:
    
          Private Sub Form_Load()
             On Error Resume Next
             Dim sDrive
             sDrive = Left("c:\windows", 3)
             If Err.Number = 0 Then
                MsgBox "The Drive is " & sDrive, vbInformation, "Drive"
             Else
                MsgBox "Error: " & Err.Number & " - " & _
                Err.Description, vbInformation, "Error Message"
             End If
          End Sub 


  3. Press the F5 key to run the project in the emulator and observe the error.


© Microsoft Corporation 1999, All Rights Reserved.
Contributions by Mike Dixon, Microsoft Corporation

Additional query words: wince vbce vbce5 vbce6

Keywords : kbToolkit kbVBp kbVBp500bug kbVBp600bug kbWinCE100 kbGrpVB
Version : WINDOWS:1.0
Platform : WINDOWS
Issue type : kbbug


Last Reviewed: October 18, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.