none
Error 6 en tiempo de ejecución, desbordamiento en Access 2016 RRS feed

  • Pregunta

  • Feliz dia a todos, El siguiente error fue mostrado al buscar un numero de factura (32761) y me sale error 06 y me marca esta linea en amarillo
    (vRegistro = MyRst.Fields("Cod_Salidas_Factura").Value )

    Private Sub Comando78_Click()
    
    Dim MyRst As Object
    Dim vBusca As Variant
    Dim blnEncontrado As Boolean
    vBusca = InputBox("¿Número de registro a buscar?", "BÚSQUEDA", "...")
    If vBusca = "" Then Exit Sub
    blnEncontrado = False
    Set MyRst = Me.Recordset.Clone
    MyRst.MoveFirst
    Do Until MyRst.EOF
        Dim vRegistro As Integer
        vRegistro = MyRst.Fields("Cod_Salidas_Factura").Value
        If vRegistro = vBusca Then
            blnEncontrado = True
            Exit Do
        End If
        MyRst.MoveNext
    Loop
    If blnEncontrado = True Then
        MyRst.FindFirst "[Cod_Salidas_Factura] = " & vBusca
        Me.Bookmark = MyRst.Bookmark
    Else
        MsgBox "No se ha encontrado el registro buscado", vbInformation, "NO ENCONTRADO"
    End If
    MyRst.Close
    Set MyRst = Nothing
    
    End Sub


    domingo, 24 de enero de 2021 0:00

Respuestas

  • Un desbordamiento podría estar aquí:

    vRegistro = MyRst.Fields("Cod_Salidas_Factura").Value

    Fíjate que vRegistro es una variable de tipo Integer, que está limitado a un valor máximo que si no me equivoco es 32767. Si en la tabla existe un registro que contenga Cod_Salidas_Factura mayor que el máximo valor que cabe en un Integer, producirá un desbordamiento.

    Pero teniendo en cuenta que es VBA de Access 2016, entonces no es VB.NET. El sitio adecuado para preguntar sería el foro de programación para Office: https://social.msdn.microsoft.com/Forums/es-ES/home?forum=esdevo365

    domingo, 24 de enero de 2021 21:38

Todas las respuestas

  • Pero ¿Cuál es la pregunta? ¿Qué error da? ¿De qué double estás hablando? A simple vista no se ve nada malo en ese código. Tendrías que aclarar qué es exactamente lo que te sucede.

    Por cierto, has puesto la pregunta en el foro de VB.NET, pero ese código tiene toda la pinta de ser VB5/6. Hay otro foro distinto para ese lenguaje.

    • Propuesto como respuesta gasgdl2 domingo, 24 de enero de 2021 19:05
    domingo, 24 de enero de 2021 12:55
  • Error 06 (desbordamiento)

    Esto es hecho en micro visual basic para aplicaciones, dentro de Access 2016

    domingo, 24 de enero de 2021 20:36
  • Un desbordamiento podría estar aquí:

    vRegistro = MyRst.Fields("Cod_Salidas_Factura").Value

    Fíjate que vRegistro es una variable de tipo Integer, que está limitado a un valor máximo que si no me equivoco es 32767. Si en la tabla existe un registro que contenga Cod_Salidas_Factura mayor que el máximo valor que cabe en un Integer, producirá un desbordamiento.

    Pero teniendo en cuenta que es VBA de Access 2016, entonces no es VB.NET. El sitio adecuado para preguntar sería el foro de programación para Office: https://social.msdn.microsoft.com/Forums/es-ES/home?forum=esdevo365

    domingo, 24 de enero de 2021 21:38
  • Hola,

    ¿Alguna novedad sobre la consulta realizada?

    Gracias por usar los foros de MSDN.

    Eric Ruiz

    ____________________________

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde.

    Si tiene algún cumplido o reclamo sobre el soporte de MSDN siéntase en la libertad de contactar MSDNFSF@microsoft.com.

    lunes, 25 de enero de 2021 14:43
    Moderador