VBScrip Type Mismatch Error

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • mychevworld@yahoo.com

    VBScrip Type Mismatch Error

    I'm getting a type mismatch error on the mid(strRecord,1 ,1)="H" line. I
    used to do this all of the time, but I haven't done any VBScript for
    awhile, so I'm sure I'm forgetting something.

    While not objResults.EOF
    strRecord=Strin g( 333 ,32 )
    IF TicketID<>objRe sults.Fields("t icket").Value then
    Mid(strRecord,1 ,1)="H"
    mid(strRecord,2 ,5)=objResults. Fields("cust"). Value 'cust
    mid(strRecord,7 ,30)=objResults .Fields("ship1" ).Value 'ship1
    mid(strRecord,3 7,30)=objResult s.Fields("ship2 ").Value 'ship2
    mid(strRecord,6 7,30)=objResult s.Fields("ship3 ").Value 'ship3
    else
    mid(strRecord,1 ,1)="D"
    END IF
    objStream.Write Line(strRecord)
    TicketID=objRes ults.Fields("ti cket").Value
    objResults.Move next


    Wend

  • mahajan.sanjeev@gmail.com

    #2
    Re: VBScrip Type Mismatch Error

    I think you have messed up with the Mid function. Mid return a string
    and it cannot be used the way you are using it. I would approach the
    whole script differently:

    While not objResults.EOF
    IF TicketID<>objRe sults.Fields("t ­icket").Value then
    strRecord = "H"
    strRecord = strRecord +
    objResults.­Fie lds("cust").Val ue 'cust
    strRecord = strRecord +
    objResults­.Fie lds("ship1").Va lue 'ship1
    strRecord = strRecord +
    objResult­s.Fie lds("ship2").Va lue 'ship2
    strRecord = strRecord +
    objResult­s.Fie lds("ship3").Va lue 'ship3
    strRecord = strRecord + Space(333 -
    Len(strRecord))
    else
    strRecord="D"
    strRecord = strRecord + Space(333 -
    Len(strRecord))
    END IF
    objStream.Write Line(strRecord)
    TicketID=objRes ults.Fields("ti ­cket").Value
    objResults.Move next


    Wend

    Comment

    • Alex

      #3
      Re: VBScrip Type Mismatch Error

      you can only use mid(string,1,1) = "h" in VBA + VB6 etc

      you can not use this construct in VBScript

      Comment

      Working...