2017-03-31 18 views
0

この行にエラー424が表示されています。VB6実行時エラー424

lblprvbal.Text = Val(NewItem.SubItems(11)) 
Private Sub cmdShow_Click() 
'lblTotPur/lblTotPayRet/lblBalance 
Dim strShow, mSlNo 
Dim rsShow As New ADODB.Recordset 
Dim NewItem As Variant 
If Trim(txtCustomer.Text) = "" Then 
    MsgBox "Please select customer to proceed...", vbCritical, POPUP_COMP 
    Exit Sub 
End If 

Dim recCnt 
pgrPartyLedger.Min = 0 
recCnt = 0 
'VOUCHMST_P//VNO,DATED,VTYPE,REMARKS,byUser CASH PURCHASE RETURN 
strShow = "select Count(*) as mCnt from VOUCHMST A,VOUCHDAT B, Prevbal C " 
strShow = strShow & " where A.VNO=B.VNO and B.IDNO=C.obd and (A.REMARKS='CASH SALE RETURN' OR A.REMARKS='CREDIT SALE RETURN' OR A.REMARKS='CREDIT SALE' OR A.REMARKS='CASH SALE' OR A.REMARKS='RECEIPT' OR A.REMARKS='CREDIT NOTE') " 
strShow = strShow & " and A.DATED between #" & Format(dtFrom.Value, "MM/dd/yyyy") & "# " 
strShow = strShow & " and #" & Format(dtTo.Value, "MM/dd/yyyy") & "# " 
strShow = strShow & " and B.IDNO = '" & Trim(txtCustomerId.Text) & "' " 
'strShow = strShow & " order by A.ID,A.DATED,A.VNO" 
rsShow.Open strShow, cn 
recCnt = rsShow("mCnt") 
rsShow.Close 
pgrPartyLedger.Max = recCnt + 1 

'VOUCHMST_P//VNO,DATED,VTYPE,REMARKS,byUser 
strShow = "select A.Id,A.cmnt,A.ADV,A.VNO,A.DATED,B.IDNO,B.IDNAME,B.AMOUNT,B.DR_CR,B.VNARRATION,A.REMARKS,B.CQ_TYPE, B.BANKNAME, B.BANKBRANCH, B.CQ_NO, C.amnt from VOUCHMST A,VOUCHDAT B, Prevbal C " 
strShow = strShow & " where A.VNO=B.VNO and B.IDNO=C.obd and (A.REMARKS='CASH SALE RETURN' OR A.REMARKS='CREDIT SALE RETURN' OR A.REMARKS='CREDIT SALE' OR A.REMARKS='CASH SALE' OR A.REMARKS='RECEIPT' OR A.REMARKS='CREDIT NOTE') " 
strShow = strShow & " and A.DATED between #" & Format(dtFrom.Value, "MM/dd/yyyy") & "# " 
strShow = strShow & " and #" & Format(dtTo.Value, "MM/dd/yyyy") & "# " 
strShow = strShow & " and B.IDNO = '" & Trim(txtCustomerId.Text) & "' " 
strShow = strShow & " order by A.ID,A.DATED,A.VNO" 
rsShow.Open strShow, cn 

Dim mPur, mPayRet, mAnyAdv, mTempVNO 
mPur = 0 
mPayRet = 0 
mAnyAdv = 0 

mSlNo = 1 
ShowPaymentHeader 
Do While Not rsShow.EOF 
    mTempVNO = rsShow("VNO") 

    Set NewItem = listViewPayment.ListItems.Add(, "C" & mSlNo, Format(rsShow("DATED"), "dd/MM/yyyy")) 
    NewItem.SubItems(1) = mTempVNO 
    NewItem.SubItems(2) = IIf(IsNull(rsShow("IDNAME")), "", CommaFilterText(rsShow("IDNAME"), 1)) 
    NewItem.SubItems(11) = rsShow("amnt") 
    If Trim(rsShow("REMARKS")) = "CASH SALE" Then 
     NewItem.SubItems(3) = FormatTakaPaisa(rsShow("AMOUNT")) 
     NewItem.SubItems(4) = FormatTakaPaisa(rsShow("AMOUNT")) 
    ElseIf Trim(rsShow("REMARKS")) = "CREDIT SALE" Then 
     mAnyAdv = ShowPartialAdvance(rsShow("VNO")) 
     NewItem.SubItems(3) = FormatTakaPaisa(rsShow("AMOUNT") + Val(mAnyAdv)) 

     If Val(mAnyAdv) > 0 Then 
      NewItem.SubItems(4) = FormatTakaPaisa(mAnyAdv) 

     Else 
      NewItem.SubItems(4) = "" 


     End If 
    Else 
     NewItem.SubItems(3) = "" 
     NewItem.SubItems(4) = FormatTakaPaisa(rsShow("AMOUNT")) 
     NewItem.SubItems(7) = rsShow("CQ_TYPE") 
     NewItem.SubItems(8) = rsShow("BANKNAME") 
     NewItem.SubItems(9) = rsShow("BANKBRANCH") 
     NewItem.SubItems(10) = rsShow("CQ_NO") 

     NewItem.SubItems(13) = "" & rsShow("cmnt") 




    End If 
    NewItem.SubItems(6) = rsShow("IDNO") 


    mPur = mPur + Val(NewItem.SubItems(3)) 
    mPayRet = mPayRet + Val(NewItem.SubItems(4)) 

    NewItem.SubItems(5) = rsShow("REMARKS") 

    NewItem.SubItems(12) = GetVoucherRefNo(mTempVNO) 

    pgrPartyLedger.Value = mSlNo 

    mSlNo = mSlNo + 1 
    rsShow.MoveNext 
Loop 
rsShow.Close 

lblprvbal.Text = Val(NewItem.SubItems(11)) 
lblTotPur.Caption = FormatTakaPaisa(mPur) + Val(lblprvbal.Text) 
lblTotPayRet.Caption = FormatTakaPaisa(mPayRet) 
lblBalance.Caption = FormatTakaPaisa(mPur - mPayRet) + Val(lblprvbal.Text) 

pgrPartyLedger.Value = 0 
End Sub 
+0

どうして 'lblprvbal.Text = NewItem.SubItems(11)' – Hackerman

+0

だけでなく、エラーが残っています。 –

+1

"オブジェクトが必要(エラー424)" – Bob77

答えて

0

lblprvbalがオブジェクトではありませんように見えます。つまり、フォームにlblprvbalという名前のTextBoxがないと思っています。本当の名前はlblPrvBalなので?それはあなたの他のオブジェクト名と一貫しています。副題として、lblというテキストボックスを開始したくないと思うかもしれません。これはそれがラベルであることを示唆しています。

0

以下を試してください。サブ項目の値はnullであり、したがってエラーです。

If IsDBNull(NewItem.SubItems(11)) Then 
    lblprvbal.Text = "" 
Else 
    lblprvbal.Text = Val(NewItem.SubItems(11)) 
End If 
0

NewItemがNothingでないかどうかを確認します。

関連する問題