none
COMO REDONDEAR EN VISUAL BASIC

    Pregunta

  • Hola como puedo llevar acabo esta formula en visual basic

    la formula que tengo esta funcionando en excel, pero ahora quiero hacer la operacion en visual basic

    les pongo la formula de excel

     

    =REDONDEAR.MAS(($U$8-T10)/365,0)

    ojala me pueieran ayudar

     

    jueves, 24 de marzo de 2011 12:31

Respuestas

  • En vista de las diversas respuestas del post, voy a lanzar algo más:

     

    En Excel existen estas 3 funciones:

    Redondear: Te permite redondear al número de decimales indicados.

    Redondear.Mas: Te permite redondear al número más alto según los decimales indicados.

    Redondear.Menos: Te permite redondear al número más bajo según los decimales indicados.

     

    El Namespace Math, que contiene funcionalidades relativas a Matematicas, contiene las siguientes funciones:

    Round:Te permite redondear al número de decimales indicados. Math.Round(2.0971,2) va a devolver 2.1 Porque es el redondeo natural a 2 decimales.

    Ceiling: Va a devolver el numero superior al indicado en el ejemplo anterior va a devolver 3, porque redondea a 0 decimales.

    Floor:Va a devolver el numero inferior al indicado en el ejemplo anterior va a devolver 2, porque redondea a 0 decimales.

    Un saludo.


    Javier Torrecilla
    Para el correcto funcionamiento, y que otros usuarios se puedan beneficiar de la solucion de esta pregunta por favor marca las respuestas que te hayan ayudado como "Respuesta".
    Si la respuesta te ha sido util Votala.
    Mi Blog: Jtorrecilla
    Enlace a Faq de Winforms en Ingles Muy bueno
    • Marcado como respuesta juan11mh miércoles, 30 de marzo de 2011 0:40
    jueves, 24 de marzo de 2011 15:43
  • Si pruebas con estos valores te daras cuenta de el redondeo:

    5/6 = 0.833333333333333

    Imports System.Math

    Public Class Form1

    Public Sub Button1_Click(...)

      Dim a, b, c, d  as Double

      a = Convert.ToDouble(TextBox1.Text)

      b = Convert.ToDouble(TextBox2.Text)

      c= a / b

      d= Round(c , 2) ´redondea a Dos Decimales "Round ( Valor , Numero de Decimales)"

     MessageBox.Show("La Division es: " & d)

    End Sub

    End Class

     

     


    Estudiante de Sistemas Informáticos.

    • Marcado como respuesta juan11mh miércoles, 30 de marzo de 2011 0:40
    jueves, 24 de marzo de 2011 15:28

Todas las respuestas

  • Revisa este enlace: http://msdn.microsoft.com/en-us/library/zx4t0t48.aspx
    Javier Torrecilla
    Para el correcto funcionamiento, y que otros usuarios se puedan beneficiar de la solucion de esta pregunta por favor marca las respuestas que te hayan ayudado como "Respuesta".
    Si la respuesta te ha sido util Votala.
    Mi Blog: Jtorrecilla
    Enlace a Faq de Winforms en Ingles Muy bueno
    jueves, 24 de marzo de 2011 12:40
  • Utiliza el metodo de la clase Math Math.round(NUMERO)
    José Miguel Pérez M. Desarrollador www.Codigo-source.net jose.perez@codigo-source.net
    jueves, 24 de marzo de 2011 13:37
  • hola

    otra tecnica es con formato

    txtRedondear = CDec(txtValor.Text).ToString("N0")

     

    con el N indicas que es un formato numerico, y el cero la cantidad de decimales, en este caso que los quite, pero puede poenr 1 o 2 si necesitas mostrarlos

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    jueves, 24 de marzo de 2011 14:44
  • Si pruebas con estos valores te daras cuenta de el redondeo:

    5/6 = 0.833333333333333

    Imports System.Math

    Public Class Form1

    Public Sub Button1_Click(...)

      Dim a, b, c, d  as Double

      a = Convert.ToDouble(TextBox1.Text)

      b = Convert.ToDouble(TextBox2.Text)

      c= a / b

      d= Round(c , 2) ´redondea a Dos Decimales "Round ( Valor , Numero de Decimales)"

     MessageBox.Show("La Division es: " & d)

    End Sub

    End Class

     

     


    Estudiante de Sistemas Informáticos.

    • Marcado como respuesta juan11mh miércoles, 30 de marzo de 2011 0:40
    jueves, 24 de marzo de 2011 15:28
  • En vista de las diversas respuestas del post, voy a lanzar algo más:

     

    En Excel existen estas 3 funciones:

    Redondear: Te permite redondear al número de decimales indicados.

    Redondear.Mas: Te permite redondear al número más alto según los decimales indicados.

    Redondear.Menos: Te permite redondear al número más bajo según los decimales indicados.

     

    El Namespace Math, que contiene funcionalidades relativas a Matematicas, contiene las siguientes funciones:

    Round:Te permite redondear al número de decimales indicados. Math.Round(2.0971,2) va a devolver 2.1 Porque es el redondeo natural a 2 decimales.

    Ceiling: Va a devolver el numero superior al indicado en el ejemplo anterior va a devolver 3, porque redondea a 0 decimales.

    Floor:Va a devolver el numero inferior al indicado en el ejemplo anterior va a devolver 2, porque redondea a 0 decimales.

    Un saludo.


    Javier Torrecilla
    Para el correcto funcionamiento, y que otros usuarios se puedan beneficiar de la solucion de esta pregunta por favor marca las respuestas que te hayan ayudado como "Respuesta".
    Si la respuesta te ha sido util Votala.
    Mi Blog: Jtorrecilla
    Enlace a Faq de Winforms en Ingles Muy bueno
    • Marcado como respuesta juan11mh miércoles, 30 de marzo de 2011 0:40
    jueves, 24 de marzo de 2011 15:43
  • Hola amigo!...

     

    Yo me he quebrado la cabeza con este tema, el tema es que excel tengo la siguiente función

    =REDONDEAR.MAS(H5+F5; -2)

    y eso me redondea de la siguiente manera.

    si el valor es:

    8620.-

    Lo deja automáticamente en:

    8700.-

    (Esto se produce por el -2 en la formula)

     

    ahora la idea es que pueda hacer eso mismo en VB.Net y hasta ahora no he encontrado nada.

    Importante que siempre aproxime hacia la centena siguiente.

    hasta ahora he trabajado con Ceiling pero no me sirve ya que es por decimales y los doubles no los maneja con parametros para indicar que son las centenas las que tiene que incrementar.

     

    Si me pueden ayudar con esto...

    De antemano muchas gracias. 

     

     

     

    miércoles, 27 de abril de 2011 7:36