Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Error 6 desbordamiento en visual basic

Estas en el tema de Error 6 desbordamiento en visual basic en el foro de Visual Basic clásico en Foros del Web. Hola señores, Yo soy nuevo en esto, ando programando en vb, y siempre me sale el mismo error, el error 6 sobre desbordamiento. El programa ...
  #1 (permalink)  
Antiguo 28/10/2011, 05:53
 
Fecha de Ingreso: octubre-2011
Mensajes: 2
Antigüedad: 12 años, 5 meses
Puntos: 0
Error 6 desbordamiento en visual basic

Hola señores,

Yo soy nuevo en esto, ando programando en vb, y siempre me sale el mismo error, el error 6 sobre desbordamiento. El programa que tengo es el siguiente:

Sub macro1()
Load UserForm1
UserForm1.Show
End Sub
Function calculo(x As Double, y As Double, z As Double) As Double
Application.ScreenUpdating = False
Dim k As Double
Dim k1 As Double
Dim k2 As Double
Dim h As Double

k = 60000 / 3.1415
k1 = k * x
k2 = y * z

calculo = k1 / k2

Application.ScreenUpdating = True
End Function
Function rendimiento(x As Double, y As Double) As Double
Application.ScreenUpdating = False
Dim x1 As Double
Dim x2 As Double

x1 = 3.1415 * x * y
x2 = x1 / 60

rendimiento = Round(x2, [1])
Application.ScreenUpdating = True
End Function

El error me lo marca en "calculo = k1 / k2", os agradeceria que me aportaseis alguna solucion, porque ya no se que hacer.

Muchas gracias
  #2 (permalink)  
Antiguo 28/10/2011, 19:44
Usuario no validado
 
Fecha de Ingreso: junio-2010
Ubicación: Guatemala
Mensajes: 196
Antigüedad: 13 años, 9 meses
Puntos: 25
Respuesta: Error 6 desbordamiento en visual basic

Saludos, podrías ser más específico como por ejemplo que valores estas utilizando como parámetro en la función calculo. Mientras más información nos proporciones, más fácil será que alguien te ayude ;)
  #3 (permalink)  
Antiguo 28/10/2011, 20:21
Usuario no validado
 
Fecha de Ingreso: junio-2010
Ubicación: Guatemala
Mensajes: 196
Antigüedad: 13 años, 9 meses
Puntos: 25
Mensaje Respuesta: Error 6 desbordamiento en visual basic

Para verificar los valores puedes realizar lo siguiente:

Dirígete a la linea donde se encuentra la asignación calculo = k1 / k2 y presiona F9, ejecuta tu proyecto, este se detendrá antes de realizar la división.


En modo Debug, puedes poner el cursor del mouse encima de tus variables para ver en un tooltip el valor que tienen asignados en ese momento, o puedes ingresar en la ventana de inmediato el comando ? seguido por la variable que necesitas saber el valor. Ej.:

?k1
?k2

En el siguiente enlace puedes verificar el "tamaño" que tiene un double, para ver si la división que estas realizando sobrepasa los límites de una variable tipo double.

http://msdn.microsoft.com/en-us/libr...8VS.60%29.aspx

Otra forma de ver los valores que tienen asignadas las variables es realizar un debug.print
Código vb:
Ver original
  1. Debug.Print k1
  2. Debug.Print k2
  3.  
  4. calculo = k1 / k2

Como posible solución, puedes cambiar el tipo de valor que devuelve la función a tipo Variant, de esta manera VB asignará el tipo de valor que crea que pueda contener el valor de la división.

Código vb:
Ver original
  1. Function calculo(x As Double, y As Double, z As Double) As Variant
  #4 (permalink)  
Antiguo 02/11/2011, 12:00
Avatar de Kruzado  
Fecha de Ingreso: marzo-2007
Mensajes: 307
Antigüedad: 17 años, 1 mes
Puntos: 17
Respuesta: Error 6 desbordamiento en visual basic

define calculo como double, listo!

dim calculo as double
  #5 (permalink)  
Antiguo 02/11/2011, 13:26
Usuario no validado
 
Fecha de Ingreso: junio-2010
Ubicación: Guatemala
Mensajes: 196
Antigüedad: 13 años, 9 meses
Puntos: 25
Respuesta: Error 6 desbordamiento en visual basic

Que bien que lo hayas solucionado, sin embargo en el código que pusiste en tu post original, tienes calculo definido como double.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:57.