vb6 run time error '381' Invalid property array index.

When I run the code seen below, I get the Run Time error '381' Invalid property array index. The line the debugger points to is...
.fields("fo_rackType") = Me.cboRackType.ItemData(Me.cboRackType.ListIndex)

Any ideas on how to fix this error?  Thanks in Advance,
Here's the code...

Private Sub cmdInsert_Click()
    'take the current Zone that you are on, then make the endZone the
    'endZone of the new Zone.  Have the user pick tHe beginning zone and
    'make the end of the old zone the zone prior to the beginning of the
    'new zone
   
    Dim lngZoneNumb As Long
    Dim rowZoneRow As Integer
    Dim strZoneCode As String
    Dim strZoneLoc As String
   
    If Not rsZoneConfig.EOF Then
        If Not Trim(rsZoneConfig.fields("StartZoneCode")) = Trim(rsZoneConfig.fields("endZoneCode")) Then
           
            'flag that this PickZone Configuration has changed
            Me.cboPickZoneName.ItemData(Me.cboPickZoneName.ListIndex) = 1
           
            lngZoneNumb = rsZoneConfig.fields("ZoneNumber") + 1
            rowZoneRow = Me.grdZoneConfig.Row
            strZoneCode = Trim(rsZoneConfig.fields("endZoneCode"))
            strZoneLoc = Trim(rsZoneConfig.fields("endZoneLoc"))
           
            rsZoneConfig.MoveNext
            If Not rsZoneConfig.EOF Then
                rsZoneConfig.fields("ZoneNumber") = rsZoneConfig.fields("ZoneNumber") + 1
            End If
           
            With rsZoneConfig
                .AddNew
                .fields("ZoneNumber") = lngZoneNumb
                .fields("EndZoneCode") = strZoneCode
                .fields("EndZoneLoc") = strZoneLoc
                .fields("fo_building") = Me.cboBuilding.ItemData(Me.cboBuilding.ListIndex)
                .fields("fo_rackType") = Me.cboRackType.ItemData(Me.cboRackType.ListIndex)
                .fields("ZoneName") = Trim(Me.cboPickZoneName.Text)
                .fields("ZoneQty") = 0
                .fields("PacksNeeded") = 0
                .fields("UnitsNeeded") = 0
            End With
           
            'reset the Zone numbers
            rsZoneConfig.MoveNext
            Dim icount As Long
            icount = lngZoneNumb + 1
            While Not rsZoneConfig.EOF
                rsZoneConfig.fields("ZoneNumber") = icount
                rsZoneConfig.MoveNext
                icount = icount + 1
            Wend
   
            rsZoneConfig.Sort = "ZoneName, fo_building, fo_rackType, ZoneNumber"
           
            Me.grdZoneConfig.Refresh
           
            Me.grdZoneConfig.Row = rowZoneRow + 1
            Call grdZoneConfig_ButtonClick(1)
        Else
            MsgBox "You can not insert a Zone Here", vbExclamation, "Pick Zone Configuration"
        End If
    End If
End Sub
tesla764Asked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
ArkConnect With a Mentor Commented:
It's probably due to not initialized Me.cboRackType - initially ListIndex=-1
try
If Me.cboRackType.ListIndex>-1 Then
    .fields("fo_rackType") = Me.cboRackType.ItemData(Me.cboRackType.ListIndex)
Else
 .fields("fo_rackType") = defaultRackType
End If

Open in new window

0
 
AndyAinscowConnect With a Mentor Freelance programmer / ConsultantCommented:
Is there a field with that name ?  (Check for a misspelling)
What is the value of Me.cboRackType.ListIndex ?  (Maybe nothing is selected and it is -1)
0
 
tesla764Author Commented:
Sorry I haven't responded just yet. I will soon. I have been working on other problems that have arisen.
Thanks for you patience.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.